Mysqli插入命令不起作用

时间:2014-12-28 09:23:52

标签: php mysql mysqli

我有一个名为“kargo”的数据库和一个名为“cargos”的表。我尝试了下面的代码,但POST中的数据未添加到“cargos”表中。连接正常,不会返回任何错误。我该怎么办?

<?php include("functions.php"); get_header(); ?>
<div id="content">
<?php $mysqli = new mysqli('localhost','root','','kargo');
$name = $_POST['c_name'];
$c_texit = $_POST['c_texit'];
$c_tarrive = $_POST['c_tarrive'];
$target = "kargo/";
$target_file = $_FILES["cpic"]["tmp_name"];
$target_move = $target.$_FILES["cpic"]["name"];
$uploadOk = 1 ;

if (file_exists($target_move)) {
$uploadOk = 0; } 

if($uploadOk == 1 ) {
$query = $mysqli->query("INSERT INTO cargos 
VALUES(NULL,'".$name."','".$c_texit."','".$c_tarrive."','".$target_move."')");
move_uploaded_file($target_file,$target_move);
echo "Cargo added."; header( "refresh:5;url=panel.php" ); }
else { echo "-"; header( "refresh:5;url=panel.php" ); } ?>
</div>
<?php get_footer(); ?>

1 个答案:

答案 0 :(得分:0)

如果您插入的数据与表格货物匹配,请尝试检查您在每列中使用的数据类型以及NOT NULL和其他限制。

如果您使用localhost,则可以通过对phpmyadmin执行mysqli命令来检查错误。


您还可以使用mysqli_error()函数来检查SQL是否有错误。

示例:

$query = $mysqli->query("INSERT INTO cargos VALUES(NULL,'".$name."','".$c_texit."','".$c_tarrive."','".$target_move."')"))
if($mysqli->query($query) === FALSE)
    {
       mysqli_error($mysqli);   // generate SQL error message.
    }
    else
    {
       // execute something...
    }