我正在使用以下语句,但不确定如何正确获取语句中的$variables
:
mysql_query("INSERT INTO subscribers (email, referral_id, user_id, ip_address)
VALUES ('$user_email', '$user_refer', '$user_share', '$_SERVER['REMOTE_ADDR']')");
答案 0 :(得分:10)
只需更改最后一个:
mysql_query("INSERT INTO subscribers (email, referral_id, user_id, ip_address)
VALUES ('$user_email', '$user_refer', '$user_share', '".$_SERVER['REMOTE_ADDR']."')");
答案 1 :(得分:6)
在字符串中使用数组类型时(双引号“”表示php将解析该字符串),您必须将要使用的值括在大括号中,即
mysql_query("INSERT INTO subscribers (email, referral_id, user_id, ip_address)
VALUES ('$user_email', '$user_refer', '$user_share', '{$_SERVER['REMOTE_ADDR']}')");
答案 2 :(得分:1)
虽然在评论的链接中回答了字面问题,但您遇到的真实问题与SQL无关,而是与PHP字符串语法无关。因此,这里有一个链接供您参考:http://php.net/types.string
此页面是您必须了解的有关PHP的最重要的事项 你应该努力学习它,否则即使是像这样的大多数简单任务你都无法使用PHP。
答案 3 :(得分:0)
你应该有点不同。使用
您还可以查看主题a sql command why it shows an error?
与现在的情况相比,它有点不同,但更安全。
答案 4 :(得分:0)
像这样使用:
mysql_query("INSERT INTO subscribers (email, referral_id, user_id, ip_address)
VALUES ('".$user_email."'…
答案 5 :(得分:0)
做你想做的最安全的方法不是这个:
mysql_query("INSERT INTO subscribers (email, referral_id, user_id, ip_address)
VALUES ('$user_email', '$user_refer', '$user_share', '$_SERVER['REMOTE_ADDR']')");
这样做:
$ query =“INSERT INTO订阅者(email,referral_id,user_id,ip_address) VALUES('$ user_email','$ user_refer','$ user_share','{$ _SERVER ['REMOTE_ADDR']}')“
请注意$ _SERVER变量内索引周围的花括号。如果要在超全局中包含索引,则最好使用大括号。否则,按照他人的建议使用连接。