解析错误:语法错误,意外“工作人员”(T_STRING),期待']'

时间:2014-02-23 12:37:22

标签: php html mysql

我修改了我的代码,无论什么

,这个错误似乎都没有

<?php
$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db('feedback', $con); 

isset($_REQUEST['submit']);  

$sql="INSERT INTO feedback ( 1Staff, 1subject, 1Rate1, 1Rate2, 1Rate3, 1Rate4, 1Rate5, 2Staff, 2subject, 2Rate1, 2Rate2, 2Rate3, 2Rate4, 2Rate5, 3Staff, 3subject, 3Rate1, 3Rate2, 3Rate3, 3Rate4, 3Rate5, 4Staff, 4subject, 4Rate1, 4Rate2, 4Rate3, 4Rate4, 4Rate5, 5Staff, 5subject, 5Rate1, 5Rate2, 5Rate3, 5Rate4, 5Rate5)
VALUES
('$_POST[1staff]','$_POST[1subject]','$_POST[1Rate1]','$_POST[1Rate2]','$_POST[1Rate3]','$_POST[1Rate4]','$_POST[1Rate5]','$_POST[2staff]','$_POST[2subject]','$_POST[2Rate1]','$_POST[2Rate2]','$_POST[2Rate3]','$_POST[2Rate4]','$_POST[2Rate5]','$_POST[3staff]','$_POST[3subject]','$_POST[3Rate1]','$_POST[3Rate2]','$_POST[3Rate3]','$_POST[3Rate4]','$_POST[3Rate5]','$_POST[4staff]','$_POST[4subject]','$_POST[4Rate1]','$_POST[4Rate2]','$_POST[4Rate3]','$_POST[4Rate4]','$_POST[4Rate5]','$_POST[5staff]','$_POST[5subject]','$_POST[5Rate1]','$_POST[5Rate2]','$_POST[5Rate3]','$_POST[5Rate4]','$_POST[5Rate5]')";


if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }

  echo $values;

mysql_close($con);
?>

<meta http-equiv="refresh" content="0;URL=thankyou.html" />
</body>
</html>

('$ _ POST [1staff]','$ _ POST [1subject]'....在第17行 我尝试了一切,这让我开玩笑了

3 个答案:

答案 0 :(得分:1)

您的代码需要正确转义...

你曾经使用过它......

'$_POST[1Rate5]','$_POST[2staff]','$_POST[2subject]',

你已经像这样修改了它们。

".$_POST['1Rate5'].",".$_POST['2staff'].",".$_POST['2subject'].",
^-- Add a double quote         ^-- Add a single quote around  ^-- Make use of concatenate operator

您必须为所有其他变量执行此操作....

除了这些问题之外......(mysql_*)扩展程序自PHP 5.5.0起已弃用,将来也会被删除。相反,应使用MySQLiPDO_MySQL扩展名。切换到PreparedStatements甚至可以更好地抵御SQL注入攻击!

答案 1 :(得分:1)

如果“1staff”和“1subject”是键(例如,值为$ _POST ['1staff']),则可以连接$ _POST变量。

"...('". $_POST['1staff'] ."..."

同样对于其余的字符串。

答案 2 :(得分:0)

你可以使用('{$ _POST [“1stuff”]}','{$ _ POST [“1stuff”]}',)