Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.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_Database - Fatal编程技术网

Php 为什么我的代码不将数据插入数据库?

Php 为什么我的代码不将数据插入数据库?,php,mysql,database,Php,Mysql,Database,您似乎是数据库新手,看到了其他问题,这是唯一一个与数据库工作相关的问题 这一行永远不会执行: <?php require 'connect.inc.php'; $food= $_POST['food']; $cost= $_POST['cost']; $sqlinsert = "INSERT INTO test (eat, pay) VALUES ('$food','$cost')"; ?> <form method = "POST" action = "index

您似乎是数据库新手,看到了其他问题,这是唯一一个与数据库工作相关的问题

这一行永远不会执行:

<?php
 require 'connect.inc.php';

$food= $_POST['food'];
$cost= $_POST['cost'];

$sqlinsert = "INSERT INTO test (eat, pay) VALUES ('$food','$cost')";

?> 

<form method = "POST" action = "index.php">
    Food: <input type = "text" name = "food">
            <br/>
    Cost: <input type = "text" name = "cost">
            <br/>
            <input type = "submit" value = "order">
</form>
我们不知道您正在使用哪个MySQL API进行连接;如果是
mysql\uu
,或者
mysqli\u
或者PDO,或者其他,因为您在问题中没有提到这一点

根据使用的API,需要在PDO中运行
mysql\u query()
,或
mysqli\u query()
query()/execute()

有关如何执行此操作,请参阅以下链接:

  • /
使用与之连接的同一API检查错误,并且看到您很可能在同一文件中运行此代码,您需要在POST数组周围使用条件语句来检查它们是否为空,和/或在“提交”按钮上使用
isset()
,并为其指定一个“name”属性

即:

使用
if(isset($\u POST['submit']){…}

否则,您将无法返回错误

如果引用为空:

注意:不同的MySQL API不会混合使用,因此您不能连接到
MySQL\u
并使用
mysqli\u query()
或PDO进行查询,请记住这一点

另一件事是确保进入数据库的数据不包含MySQL会抱怨的字符,例如撇号

因此,您需要转义该数据。这还有另一个原因,避免了可能的SQL注入;你应该使用事先准备好的声明

参考资料:


脚注:


如果您使用的是
mysql\uu
API进行连接,则该API已被弃用,并已在php7.0中删除。如果是这种情况,那么您将需要使用
mysqli\uu
或PDO API。

在哪里运行查询?因为将查询文本分配给变量并不意味着将执行查询。execute mysqli\u query()“它连接良好”-是什么,mysql\ux?迈斯克利?PDO?其他的?
$sqlinsert = "INSERT INTO test (eat, pay) VALUES ('$food','$cost')";