欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP上传Excel并批量添加数据到pgsql的有关问题,期待高人解答

程序员文章站 2022-06-13 23:25:59
...
PHP上传Excel并批量添加数据到pgsql的问题,期待高人解答!
本帖最后由 jkxlh20120001 于 2013-05-14 21:41:53 编辑 下面这个代码的作用是上传Excel并读取其中的数据,批量添加数据到pgsql数据库中,目前已成功实现上传并将数据读出来,但是在批量插入数据时出现错误(无法执行SQL语句),但用输出的$sql的值的语句直接在pgAdminIII中运行,又是成功的。哪位大神帮助看一下,不胜感激!

include_once("reader.php");
include_once("conn.php");

$remotefilename= date("Ymdhis").".xls";
if (substr($_FILES["file"]["name"],-4)==".xls")
{
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "
";
}
else
{
if(move_uploaded_file($_FILES["file"]["tmp_name"],"xlstmp/" .$remotefilename)==1)
{
//上传成功并开始读取xls文件
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('CP936');
$data->read("xlstmp/" .$remotefilename);
$count=0;
if($data->sheets[0]['numRows']>=2 && $data->sheets[0]['numCols']>=2)
{
for ($i = 2; $i sheets[0]['numRows']; $i++)
{
$s="";
for ($j = 1; $j sheets[0]['numCols']; $j++)
{
if(strlen($data->sheets[0]['cells'][$i][$j])==0) break;
$s.= $data->sheets[0]['cells'][$i][$j]."|";
}
if(strlen($s)!=0)
{
$count++;
$ss =explode('|',$s);//将关键词以空格分割到数组中。

// $sql="INSERT INTO zikao_tzd_kecheng(\"KC_DM\",\"KC_MC\") VALUES('1111','ok')";
//执行上面这句都是可以的
$sql="INSERT INTO zikao_tzd_kecheng(\"KC_DM\",\"KC_MC\") VALUES('".$ss[0]."','".$ss[1]."')";
//执行上面这句就不成功。
// $sql="INSERT INTO zikao_tzd_kecheng(\"KC_DM\",\"KC_MC\") VALUES('".$data->sheets[0]['cells'][$i][1]."','".$data->sheets[0]['cells'][$i][2]."')";



echo $sql."
";
$result = $PG -> query($sql);
}
}
echo $count."records";
}
else
{
echo "xls's rows or columns is so few.";
}

}
else
echo "upload failed.";
}
}
else
{
echo "invalid file";
}
$PG ->close();
?>
PHP SQL pgsql

网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • PHP上传Excel并批量添加数据到pgsql的有关问题,期待高人解答
  • 专题推荐

    作者信息
    PHP上传Excel并批量添加数据到pgsql的有关问题,期待高人解答

    认证0级讲师

    推荐视频教程
  • PHP上传Excel并批量添加数据到pgsql的有关问题,期待高人解答javascript初级视频教程
  • PHP上传Excel并批量添加数据到pgsql的有关问题,期待高人解答jquery 基础视频教程
  • 视频教程分类