【问题标题】:mysqli insert query not inserting recordmysqli插入查询不插入记录
【发布时间】:2014-08-20 09:00:51
【问题描述】:

这是我的 PHP 代码,它没有插入记录并且总是显示 false

$con = mysqli_connect("localhost", "XXX", "XXX", "vital");
$fieldName = implode(",",array_keys($data));
$values = '"'.implode('","', array_values($data)).'"';

    echo $query = "insert into ".$table." (".$fieldName.") values(".$values.")";
    if(mysqli_query($con,$query))
        echo "<br>true";
    else 
        echo "<br>false";   

这是我直接写入 phpmyadmin 的等效 SQL 查询,非常完美。下面是echo $query生成的SQL查询

insert into patient 
        (patient_id,opd_id,patient_name,hospital_name,plot_from_file,entry_date) 
         values("1234","1233","456","temp","false","2014-08-20");

上述查询在 phpmyadmin 中可以完美运行。

【问题讨论】:

  • 不要将未经过滤的输入放入参数中!使用准备好的语句!
  • 不知道你说的unfiltered inputs是什么意思?
  • 使用mysqli_error()检查
  • 希望您在构建 $data 数组时做一些检查。是的,一条错误消息可能很有用。 + 为什么要使用 mysqli_query 2 次?
  • @Gerifield 对不起,我写错了两次mysqli_query

标签: php mysql mysqli phpmyadmin


【解决方案1】:

请试试这个

  `<?php 
    $con=mysql_connect("localhost","xxx","xxx");
    if(!$con)
   {
   die("could not connect".mysql_error());
   }
   mysql_select_db("DB Name",$con);

   ?>`
    <?php 
   $sql="INSERT INTO patient 
    (patient_id,opd_id,patient_name,hospital_name,plot_from_file,entry_date) 
     values("1234","1233","456","temp","false","2014-08-20"); ?>

【讨论】:

  • 我用的是mysqli而不是mysql,所以请给mysqli的答案
  • 这是 mysqli 不是 mysql。
  • 对于连接数据库
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-31
  • 2012-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多