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

Php 无法解决未定义的偏移错误

Php 无法解决未定义的偏移错误,php,mysql,Php,Mysql,我正在尝试使用php将excel文件excdemo.xlsx导出到mysql数据库。 我得到一个未定义的偏移量错误。原因是什么 if(isset($_POST['submit'])) { $link=mysql_connect("localhost","root",""); mysql_select_db("db2017",$link); $source = fopen('excdemo.xlsx', 'r') or die("Problem open file"); while (

我正在尝试使用php将excel文件excdemo.xlsx导出到mysql数据库。 我得到一个未定义的偏移量错误。原因是什么

if(isset($_POST['submit']))
{
$link=mysql_connect("localhost","root","");
mysql_select_db("db2017",$link);


$source = fopen('excdemo.xlsx', 'r') or die("Problem open file");
    while (($data = fgetcsv($source, 1000, ",")) !== FALSE)
    {
        $name = $data[0];
        $lname = $data[1];
        $phone = $data[2];
        $email = $data[3];
        $address = $data[4];
        $high = $data[5];


 mysql_query("INSERT INTO excel(fname,lname,phone,email,address,high) VALUES ('".$name."','".$lname."','".$phone."','".$email."','".$address."','".$high."') ");
    }
    fclose($source);
}
错误:

未定义的偏移量:C:\xampp\htdocs\Exam\main.php中的4 请省略我对mysql而不是mysqli的使用_


我找到了解决我问题的办法。创建excel工作表时,我们需要将文件类型设置为CSV(MS-DOS),因为我们使用的是
fgetcsv()
函数

请使用
$data
var\u dump()
更新您的问题。它显然与
$data
有关<代码>fgetcsv??!!这是一个excel文件而不是csv,如果您想在php中读取xlsx,请查看