在php中写入如下的代码,可以select,但数据插入不了数据库,$res1为false。请问是什么原因?
<?php
require_once 'reader.php';
// ExcelFile($filename, $encoding);
$data = new Spreadsheet_Excel_Reader();//实例化,常用的导入excel文件的php类
// Set output Encoding.
$data->setOutputEncoding('utf-8');
$data->read('E:\123.xls');
 
$conn=mysqli_connect("localhost","root","123456","case");
//$conn->query('set names gb2312');
 
if (mysqli_connect_errno()){
echo 'Error: Could not connect to database.Please try again later.';
exit;
}
//             error_reporting(E_ALL ^ E_NOTICE);
for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++)
{
$sql1 = "INSERT INTO case(number,module,title,precondition,reference,pri) VALUES('".
     $data->sheets[0]['cells'][$i][2]."','".
                $data->sheets[0]['cells'][$i][1]."','".
                $data->sheets[0]['cells'][$i][3]."','".
                $data->sheets[0]['cells'][$i][4]."','".
                $data->sheets[0]['cells'][$i][5]."','".
$data->sheets[0]['cells'][$i][8]."')";
$sql2 = "INSERT INTO casestep(desc,expect) VALUES('".
    $data->sheets[0]['cells'][$i][6]."','".
         $data->sheets[0]['cells'][$i][7]."')";
$res1 = $conn->query($sql1);
//              $res2 = $conn->query($sql2);
}
?>php mysql 数据库

解决方案 »

  1.   

    问题中的sql语句在SQLyog中执行时ok的,可以插进去。就是上面的代码不行。
      

  2.   

    既然 $res1 为 false
    那么你
    echo mysql_error();
    看看不就知道了吗?
      

  3.   


    我是在一大段代码里面调试这块,加上echo mysql_error();没有输出,查看mysql_error()也为false。
      

  4.   

    $res1 = $conn->query($sql1);
    改为
    mysqli_query($con,$sql1);看看
      

  5.   

    sorry,写错,应该是
    mysqli_query($conn,$sql1);
      

  6.   

    是我糊涂了,没注意你用的是 mysqli 扩展
    你 
    echo $conn->error;
    就可以看到是哪里错了!
    我是在一大段代码里面调试这块,加上echo mysql_error();没有输出,查看mysql_error()也为false。
      

  7.   

    请问是哪个函数?谢谢!
    改了还是false。
      

  8.   

    echo mysqli_error($conn); 看看