Php 读取excel文件并将其存储到mysql数据库

Php 读取excel文件并将其存储到mysql数据库,php,mysql,excel,Php,Mysql,Excel,我有下面的代码,它在执行时给出了一个错误 <?php require_once 'Excel/reader.php'; $data = new Spreadsheet_Excel_Reader(); $data->setOutputEncoding('CP1251'); $data->read('exceltestsheet.xlsx'); $conn = mysql_connect("localhost","root",""); mysql_select_db("excel

我有下面的代码,它在执行时给出了一个错误

<?php
require_once 'Excel/reader.php';
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('CP1251');
$data->read('exceltestsheet.xlsx');

$conn = mysql_connect("localhost","root","");
mysql_select_db("exceltest",$conn);
 for ($x = 2; $x <= count($data->sheets[0]["cells"]); $x++) {
   // $sno = $data->sheets[0]["cells"][$x][1];
    $name = $data->sheets[0]["cells"][$x][1];
    $extension = $data->sheets[0]["cells"][$x][2];
    $email = $data->sheets[0]["cells"][$x][3];
    $sql = "INSERT INTO mytable (name,extension,email) 
        VALUES ('$name',$extension,'$email')";
    echo $sql."\n";
    mysql_query($sql);
 }
?>
这是显示错误的行。

请检查此行

    <?php
require_once 'Excel/reader.php';
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('CP1251');
$data->read('siteb_ceccwo.xls');

$con=mysqli_connect("localhost","root","","exceltest");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

// Create table
$sql="CREATE TABLE siteb_ceccwo(

    quote_number VARCHAR(100),
    line_no VARCHAR(100),
    item_no VARCHAR(100),
    name VARCHAR(100),
    unit VARCHAR(100),
    rm VARCHAR(100),
    cwo_rm VARCHAR(100))";

// Execute query
if (mysqli_query($con,$sql))
  {
  echo "Table siteb_ceccwo created successfully";
  }
else
  {
  echo "Error creating table: " . mysqli_error($con);
  }

for($x = 2; $x <= count($data->sheets[0]["cells"]); $x++)
 {
    //$sno = $data->sheets[0]["cells"][$x][1];
    $quote_number = $data->sheets[0]["cells"][$x][1];
    $line_no = $data->sheets[0]["cells"][$x][2];
    $item_no = $data->sheets[0]["cells"][$x][3];
    $name = $data->sheets[0]["cells"][$x][4];
    $unit = $data->sheets[0]["cells"][$x][5];
    $rm = $data->sheets[0]["cells"][$x][6];
    $cwo_rm = $data->sheets[0]["cells"][$x][7];

    $res = mysqli_query($con,"INSERT INTO siteb_ceccwo 
    (quote_number, line_no, item_no,name,unit,rm,cwo_rm) VALUES ('$quote_number','$line_no','$item_no','$name','$unit','$rm','$cwo_rm')");
mysqli_close($res);
}
?>
检查一下这个

    <?php
require_once 'Excel/reader.php';
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('CP1251');
$data->read('siteb_ceccwo.xls');

$con=mysqli_connect("localhost","root","","exceltest");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

// Create table
$sql="CREATE TABLE siteb_ceccwo(

    quote_number VARCHAR(100),
    line_no VARCHAR(100),
    item_no VARCHAR(100),
    name VARCHAR(100),
    unit VARCHAR(100),
    rm VARCHAR(100),
    cwo_rm VARCHAR(100))";

// Execute query
if (mysqli_query($con,$sql))
  {
  echo "Table siteb_ceccwo created successfully";
  }
else
  {
  echo "Error creating table: " . mysqli_error($con);
  }

for($x = 2; $x <= count($data->sheets[0]["cells"]); $x++)
 {
    //$sno = $data->sheets[0]["cells"][$x][1];
    $quote_number = $data->sheets[0]["cells"][$x][1];
    $line_no = $data->sheets[0]["cells"][$x][2];
    $item_no = $data->sheets[0]["cells"][$x][3];
    $name = $data->sheets[0]["cells"][$x][4];
    $unit = $data->sheets[0]["cells"][$x][5];
    $rm = $data->sheets[0]["cells"][$x][6];
    $cwo_rm = $data->sheets[0]["cells"][$x][7];

    $res = mysqli_query($con,"INSERT INTO siteb_ceccwo 
    (quote_number, line_no, item_no,name,unit,rm,cwo_rm) VALUES ('$quote_number','$line_no','$item_no','$name','$unit','$rm','$cwo_rm')");
mysqli_close($res);
}
?>

是一个更适合当前使用的库。我认为在有人给你一个准确的答案之前,你的问题需要更多的细节。我还觉得您没有发布整个错误(例如,哪一行?),第一个错误来自这里的
&
字符
$this->_ole=&new OLERead()尝试将.xlsx另存为.xls for excel 97。我记得PHP Excel Reader不支持xlsxfiles@JonSalmi…没有错误,但它给出的结果类似于插入mytable(名称、扩展名、电子邮件)值('2',Anil,'2011'),而没有在数据库中插入任何内容。是一个更适合当前使用的库。我认为在有人给你一个准确的答案之前,你的问题需要更多的细节。我还觉得您没有发布整个错误(例如,哪一行?),第一个错误来自这里的
&
字符
$this->_ole=&new OLERead()尝试将.xlsx另存为.xls for excel 97。我记得PHP Excel Reader不支持xlsxfiles@JonSalmi…没有错误,但它给出的结果类似于插入mytable(名称、扩展名、电子邮件)值('2',Anil,'2011'),而没有在数据库中插入任何内容。