Php 将sql语句像公共字符串一样插入mysql数据库?

Php 将sql语句像公共字符串一样插入mysql数据库?,php,mysql,Php,Mysql,我编写了一个日志函数,它向数据库插入和更新查询。虽然我将mysql\u real\u escape\u字符串应用于sql语句,但无法将其插入数据库。 有什么建议吗?我对这个函数也有问题,然后我使用addslashes函数,它不是一个答案,而是一个解决方案 $query = sprintf("SELECT * FROM users WHERE user='%s' AND password='%s'", mysql_real_escape_string($user),

我编写了一个日志函数,它向数据库插入和更新查询。虽然我将mysql\u real\u escape\u字符串应用于sql语句,但无法将其插入数据库。
有什么建议吗?

我对这个函数也有问题,然后我使用addslashes函数,它不是一个答案,而是一个解决方案

$query = sprintf("SELECT * FROM users WHERE user='%s' AND password='%s'",
            mysql_real_escape_string($user),
            mysql_real_escape_string($password));
在SQL中,字符串必须被引用。您还缺少一个逗号。试试这个:

INSERT INTO kayit (ip, user_id, query) VALUES ('127.0.0.1', 1, 'UPDATE faal_ekonkod SET bedel = 12000 WHERE id = 1')

你得到的确切错误和使用的代码是什么?如果你希望人们花时间回答你的问题,你应该花一些时间提问。初学者的错误是什么?错误消息非常常见:SQL语法中有错误;检查与您的MySQL服务器版本对应的手册,了解在我的函数中第1行的“UPDATE faal_ekonkod SET bedel=12000,其中id=1”附近使用的正确语法。首先,我控制stripsalshes$value和MySQL\u real\u escape\u string$value,然后发送到查询字符串中。我的sql查询如下:插入kayit ip,用户id,查询值'127.0.0.1',1更新faal_ekonkod SET bedel=12000,其中id=1I无法真正得到您的答案。你提到了mysql的问题,你没有给出任何线索,你提到了addslashes作为mysql的转义函数,但事实并非如此,最后你发布了看起来非常有效的PHP代码。你是建议使用它还是避免它?
INSERT INTO kayit (ip, user_id, query) VALUES ('127.0.0.1', 1, 'UPDATE faal_ekonkod SET bedel = 12000 WHERE id = 1')