Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在数据库中插入行时出错_Php_Mysql_Sql_Database - Fatal编程技术网

Php 在数据库中插入行时出错

Php 在数据库中插入行时出错,php,mysql,sql,database,Php,Mysql,Sql,Database,我一直试图在我的数据库中添加一行,但无论我做什么,我都会不断收到相同的错误。错误是解析错误:语法错误,意外的T_字符串。 这是我的代码: <!DOCTYPE html> <html> <body> <?php $con=mysqli_connect("mysql5.000webhost.com","********","******","*******"); if (mysqli_connect_errno()) { echo "Failed t

我一直试图在我的数据库中添加一行,但无论我做什么,我都会不断收到相同的错误。错误是解析错误:语法错误,意外的T_字符串。 这是我的代码:

<!DOCTYPE html>
<html>
<body>
<?php
$con=mysqli_connect("mysql5.000webhost.com","********","******","*******");
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
//Connecting to the Database works
INSERT INTO test (`1`, `2`, `3`, `4`) VALUES (\'11\', \'11\', \'11\', \'11\');
mysqli_close($con);
?>  
</body>
</html> 

删除语句中的
\

$query = "INSERT INTO test (`1`, `2`, `3`, `4`) VALUES ('11', '11', '11', '11')";
但是如果列是整数

$query = "INSERT INTO test (`1`, `2`, `3`, `4`) VALUES (11, 11, 11, 11)";

您需要执行一个查询-


我注意到您的sql语句的编写方式与php代码类似。php解释器不会直接解析SQL。您需要首先将sql放入变量中,然后执行该语句。此外,您正在转义单引号,这不好

     $sql="INSERT INTO test (`1`, `2`, `3`, `4`) VALUES ('11', '11', '11', '11')";
    $result = $db->query($sql);

    while ($data = $result->fetch_assoc())
    {
       $retval[]= $data;
    }

假设$db是一个有效的连接

Um,如果你阅读了手册或任何教程,或者有一个像样的PHP编辑器,那么现在你已经发现了这一点。为什么你的
$sql
在你的
$result=$this->db->query($sql)之后是
$sql>?还有,为什么要在
INSERT
上显示执行
$result->fetch_assoc()
?lol我的错误我在一个类中做了一个测试,我将编辑我的帖子当我运行脚本时,它给了我一个错误“致命错误:调用非对象中的成员函数query()”,这是正确的,但这并不能解决OP也缺少执行INSERT的
mysqli\u query()
/
$sql->query()
的问题,我这里不显示执行,只显示要执行的语法<代码>:)
     $sql="INSERT INTO test (`1`, `2`, `3`, `4`) VALUES ('11', '11', '11', '11')";
    $result = $db->query($sql);

    while ($data = $result->fetch_assoc())
    {
       $retval[]= $data;
    }