Php 在数据库中插入行时出错
我一直试图在我的数据库中添加一行,但无论我做什么,我都会不断收到相同的错误。错误是解析错误:语法错误,意外的T_字符串。 这是我的代码: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
<!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;
}