我在尝试连接到mysql时遇到了很大的问题.当我跑:
/usr/local/mysql/bin/mysql start
Run Code Online (Sandbox Code Playgroud)
我有以下错误:
Can't connect to local MySQL server through socket '/var/mysql/mysql.sock' (38)
Run Code Online (Sandbox Code Playgroud)
我确实mysql.sock在/var/mysql目录下.
在/etc/my.cnf我有:
[client]
port=3306
socket=/var/mysql/mysql.sock
[mysqld]
port=3306
socket=/var/mysql/mysql.sock
key_buffer_size=16M
max_allowed_packet=8M
Run Code Online (Sandbox Code Playgroud)
在/etc/php.ini我有:
; Default socket name for local MySQL connects. If empty, uses the built-in
; MySQL defaults.
mysql.default_socket = /var/mysql/mysql.sock
Run Code Online (Sandbox Code Playgroud)
我已经重启了apache sudo /opt/local/apache2/bin/apachectl restart
但我仍然有错误.
否则,我不知道这是否相关,但是当mysql_config --sockets我得到时
--socket [/tmp/mysql.sock]
Run Code Online (Sandbox Code Playgroud) 我正在使用Magento的功能来插入和更新查询.我的要求是在进行这些类型的查询时我想要处理SQL注入.但我无法找到Magento是如何做到这一点的.我正在提供一个开始样本.请给我一个完整的例子.
<?php
$write = Mage::getSingleton("core/resource")->getConnection("core_write");
$sql = "INSERT INTO Mage_Example (Name, Email, Company, Description, Status, Date)
VALUES ('$name', '$email', '$company', '$desc', '0', NOW())";
?>
Run Code Online (Sandbox Code Playgroud)
现在我想更改上面的查询以防止可能的SQL注入.我不想使用mysql_real_escape_string()PHP 的默认" "内置函数.任何人都可以使用" $write"DB Handler 为我提供一个有用的解决方案.
任何帮助是极大的赞赏.