我正在尝试将CSV文件(带标题)中的一些数据导入MySQL表。我调试了这个脚本,它似乎一直在工作直到“Handle”变量。当我运行此代码时,我得到一个空白屏幕,并且没有使用CSV数据更新MySQL表。我可能在这里遗漏了一些东西。任何帮助表示赞赏!
谢谢,
AME
以下是代码:
<?PHP
error_reporting(E_ALL & ~E_NOTICE);
if (ini_get('display_errors') === FALSE) {
ini_set('display_errors', 1);
}
$dbhost = 'localhost';
$dbuser = 'myusernam';
$dbpasswd = 'mypassword';
$db = "dbname";
$dbh = mysql_connect($dbhost, $dbuser, $dbpasswd) or die("Unable to connect to SQL server");
$my_db = @mysql_select_db($db, $dbh) or die("Unable to select database");
$file = $_SERVER['DOCUMENT_ROOT']."/home/test.csv";
$handle = fopen($file, "r");
while (($fileop = fgetcsv($handle,1000,",")) !==false)
{
$listid = $fileop[0];
$listclass = $fileop[1];
$type = $fileop[2];
$status = $fileop[3];
$remarks = $fileop[3];
$streetaddress = $fileop[6];
$fulladdress = $fileop[6].",".$fileop[7].",".$fileop[8];
$orgname = $fileop[9];
$licenseid = $fileop[10];
$agentname = $fileop[12]." ".$fileop[12];
$imagecount = $fileop[13];
$sql = mysql_query("INSERT INTO markers (id,Class,Status,AskingPrice,Remarks,StreetAddres,address,OrgName,AgentLicenseID,AgentName,ImageCount) VALUES ('$listid','$listclass','$type','$status','$remarks','$streetaddress','$fulladdress','$orgname','$licenseid','$agentname','$imagecount')");
}
if($sql)
{
echo 'data uploaded successfully';
}
?>
答案 0 :(得分:2)
听起来像你的文件权限不正确,所以你无法读取文件!要将错误消息输出到您的浏览器,请在<?php
标记下添加:
error_reporting(E_ALL & ~E_NOTICE);
if (ini_get('display_errors') === FALSE) {
ini_set('display_errors', 1);
}
如果它不是文件权限,至少它应该有希望输出对我们更有用的东西!