【问题标题】:syntax error unexpected T_ENCAPSED... php语法错误意外 T_ENCAPSED... php
【发布时间】:2013-10-03 08:49:59
【问题描述】:

可能是一个非常简单的引号,但 php 不是我的事!

"INSERT INTO feedback_test (FirstName, LastName, Age) VALUES
('$_POST[firstname]','$_POST[lastname]','$_POST[age]')"

得到错误的意外 T_ENCAPSED_AND_WHITESPACE 期望 T_STRING 或 T_VARIABLE 或 T_NUM_STRING

【问题讨论】:

  • 忘记分号? ;
  • 学习使用 PDO 和准备好的语句!
  • 那不是有效的 php。上面应该有东西。和它下面。和;。这是一个太短的样本,无法找出您的问题所在。向我们展示给出错误的最小示例,而不仅仅是这部分(注意“最小”部分!)
  • 最好把整个代码贴出来,不知何故我们不是魔术师..

标签: php mysql


【解决方案1】:

在 PHP 中,每个语句都以分号结尾。

所以在你的行中添加一个分号 (;)。

同样,您不会在发布的值中添加单引号 (')。

因此,总的来说,将您的查询更新为:

"INSERT INTO feedback_test (FirstName, LastName, Age) VALUES
('$_POST[\'firstname\']','$_POST[\'lastname\']','$_POST[\'age\']')";

【讨论】:

    【解决方案2】:

    您没有给出$_POST 的索引和引用。如果$_POST 的索引是字符串,那么它必须用 puote 给出。

    试试这个

    "INSERT INTO `feedback_test` (`FirstName`, `LastName`, `Age`) VALUES
    ('".$_POST['firstname']."','".$_POST['lastname']."','".$_POST['age']."')"
    

    【讨论】:

      【解决方案3】:

      试试这个查询

      $query = "INSERT INTO feedback_test (FirstName, LastName, Age) VALUES
      ('".$_POST["firstname"]."','".$_POST["lastname"]."','".$_POST["age"]."')";
      

      【讨论】:

        【解决方案4】:
        $query = "INSERT INTO feedback_test (FirstName, LastName, Age) VALUES ('".$_POST['firstname']."','".$_POST['lastname']."','".$_POST['age']."')";
        

        【讨论】:

        • 另外,您应该将引号添加为$_POST["firstname"],否则会发生错误。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-10-12
        • 2012-05-16
        • 2011-02-09
        • 1970-01-01
        • 1970-01-01
        • 2014-06-27
        • 2015-05-28
        相关资源
        最近更新 更多