我想从一个CSV文件(带头)导入一些数据到MySQL表中。我已经调试过这个脚本,它似乎正在工作,直到“Handle”变量。当我运行这段代码时,我得到一个空白屏幕,并且MySQL表格没有用CSV数据更新。我可能在这里错过了一些东西。任何帮助表示赞赏!PHP:导入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';
}
?>
白屏死亡的,错误检查禁用或报告奇 – 2012-12-16 08:59:18
作为一个新手 - 运行脚本,每个写行之后。在这种情况下,你肯定知道哪一行是错误的。因此,现在删除所有脚本并尝试逐行写入,以检查每个步骤后的预期结果和实际结果。这就是我们如何编写脚本(直到您有足够的经验可以在没有检查的情况下编写100行代码) – zerkms
要调试脚本,请使用[正确的错误报告设置](http://stackoverflow.com/questions/5680831/php-5 -3-确实 - 不显示错误消息)。你必须看到错误文字来检测你的问题。 –