Php SQL查询中的数组值?
我该怎么做?它给了我Php SQL查询中的数组值?,php,sql,arrays,Php,Sql,Arrays,我该怎么做?它给了我解析错误:语法错误,意外的T_封装的T_和_空格,期望T_字符串或T_变量或T_NUM_字符串尝试在变量周围使用花括号,如下所示: $sql = mysql_query("INSERT INTO `users` VALUES( '', '$form['name']', '$form['saddress']', '$form['apt']', '$form['zip']', '$fo
解析错误:语法错误,意外的T_封装的T_和_空格,期望T_字符串或T_变量或T_NUM_字符串
尝试在变量周围使用花括号,如下所示:
$sql = mysql_query("INSERT INTO `users` VALUES(
'',
'$form['name']',
'$form['saddress']',
'$form['apt']',
'$form['zip']',
'$form['homephone']',
'$form['cellphone']',
'$form['email']',
'$form[' ']',
'$form['city']',
'$form['state']',
'$form['country']',
'$salt','$hash',
'$form['username']'
)");
通过从
$form['x']
中删除单引号或执行以下操作:
..
'{$form['name']}',
'{$form['saddress']}',
..
请注意,单引号中有双引号。这是一个典型的问题,源于PHP解析变量字符串的能力,这可能会让人感到困惑。我更喜欢将变量保留在字符串之外,并在需要时进行连接 下面是我要做的:
mysql_query("INSERT INTO x VALUES(
'" . mysql_real_escape_string($form['x']) . "',
'" . mysql_real_escape_string($form['x']) . "'
");
别忘了这些点……”$表格[“城市”]。'为什么需要点?我以前从未在将普通变量插入SQL查询时使用过它们。或者{}{$form['name']},您可以使用花括号中的点。我更喜欢圆点,因为它更容易阅读。看看Nexerus或Rfasuak的答案,看看你喜欢什么。有趣的是,出于同样的原因,我更喜欢{}!
$sql = mysql_query("INSERT INTO `users` VALUES('" .
implode("','", array(
"",
$form['name'],
$form['saddress'],
$form['apt'],
$form['zip'],
$form['homephone'],
$form['cellphone'],
$form['email'],
$form[' '],
$form['city'],
$form['state'],
$form['country'],
$salt,
$hash,
$form['username']
)) . "')";
);