为课程做一个项目,但我似乎无法让它工作:
$account = $_GET['account'];
mysql_query("INSERT INTO my_bank (Account) VALUES ('"$accounts"')");
如果我将第二行更改为:
mysql_query("INSERT INTO my_bank (Account) VALUES ('TEST')");
然后它有效。我猜这是一个引用的问题,但我找不到一个有效的方法。任何有关报价如何运作的保证回退?
答案 0 :(得分:2)
基本PHP语法:
mysql_query("INSERT INTO my_bank (Account) VALUES ('" . $accounts . "')");
or
mysql_query("INSERT INTO my_bank (Account) VALUES ('$accounts')");
既然你刚开始使用PHP,你应该知道SQL injection attacks。添加一些攻击缓解代码(例如mysql_real_escape_string()
)和一些评论说你为什么使用m_r_e_s()可以从你的教授那里获得一些奖励积分。
答案 1 :(得分:2)
除了Marc B的回答,你在mySQL语句中调用了错误的变量:
$account = $_GET['account'];
mysql_query("INSERT INTO my_bank (Account) VALUES ('"$accounts"')");
在您的对帐单中注意定义$account
并调用$accounts
(注意's')。
应该是:
$account = $_GET['account'];
mysql_query("INSERT INTO my_bank (Account) VALUES ('$account')");