【问题标题】:Cannot find error in my php script. Can someone point it out to me在我的 php 脚本中找不到错误。有人可以向我指出吗
【发布时间】:2014-06-28 15:15:41
【问题描述】:

我在我的网络服务器上编写了一个 php 脚本来将值插入到表 table3 中。用于获取值的变量是 usernameimageusername 包含 varchar 类型数据,image 包含文本类型数据。我需要将它插入到我的表 table3 中。 table3 有两列 usernameimagename 分别是 varchar 类型和 text > 分别输入。

当我尝试通过输入值来运行上述脚本时,会显示如下错误:

错误:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以了解在第 1 行的“1”附近使用的正确语法

我不明白错误是什么,我被困在这里知道错误。有人可以为我清除错误。我是php新手,对php了解不多。所以需要任何人的一点帮助......请帮助我。我的 php 脚本如下所示:

<?php 
$con=mysqli_connect("localhost","username","password","db_name"); 
if (mysqli_connect_errno($con)) 
{ 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 
$username = $_POST['username']; 
$image = $_POST['image']; 
$result = mysqli_query($con,"INSERT INTO table3 (username,imagename) VALUES ('$username','$image')"); 
if (!mysqli_query($con,$result)) 
{
    die('Error: ' . mysqli_error($con));
}
else
    echo "1 record added";
mysqli_close($con);
?>

【问题讨论】:

  • 你已经执行了两次查询!
  • mysqli_query($con,$result) 这里$result 不是查询字符串。

标签: php mysql sql database mysqli


【解决方案1】:

1) **您的 SQL 语法有错误; ** 表示您的查询有误。您的查询似乎没问题,但该错误可能来自您的帖子数据。您需要mysqli_real_escape_string 来发布数据。

2) 您已经执行了两次查询。

试试这样:

$username = mysqli_real_escape_string($con, $_POST['username']); 
$image = mysqli_real_escape_string($con,$_POST['image']); 
$result = mysqli_query($con,"INSERT INTO table3 (username,imagename) VALUES ('$username','$image')"); 
if (!$result) 
{
    die('Error: ' . mysqli_error($con));
}
else
    echo "1 record added";
mysqli_close($con);

【讨论】:

    【解决方案2】:

    你应该写一些类似的东西

    $result = mysqli_query($con,"INSERT INTO table3 (username,imagename) VALUES ('$username','$image')"); 
    if (!$result) 
    {
        die('Error: ' . mysqli_error($con));
    }
    

    【讨论】:

      【解决方案3】:

      条件应该是这样的

      if (!$result) 
      {
          die('Error: ' . mysqli_error());
      }
      

      【讨论】:

        【解决方案4】:

        您的 SQL 请求 (INSERT) 在第 9 行发送,结果在$result 中捕获。 $result 包含受上一个请求影响的行数 (1)。

        然后您再次调用 mysqli_query 方法,并使用 $result 的值作为 SQL 请求:“1”不是有效的 SQL 请求。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-10-27
          • 2012-08-24
          • 2019-03-13
          • 2016-07-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-09-10
          相关资源
          最近更新 更多