【发布时间】:2012-11-19 12:59:48
【问题描述】:
我只是尝试将 LOAD DATA LOCL INFILE 与 pdo 一起使用。没有为我解决。这是我的功能
function connect($db_name,$db_host,$db_user,$db_pass)
{
try
{
$this->connect = new PDO("mysql:host=$db_host;dbname=$db_name", $db_user, $db_pass);
$this->connect->exec("LOAD DATA LOCAL INFILE 'http://localhost/testoo.csv'
INTO TABLE 'parsed'
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '\"'
LINES TERMINATED BY '\n'
('name','link','price','brand','imageurl')");
}
catch(PDOException $e)
{
echo $e->getMessage();
}
}
现在什么都没有发生。相同的查询适用于普通的 mysql_query。这个问题的任何指针?
【问题讨论】:
-
您是否收到任何错误消息?您是否开启了错误报告?
-
感谢您,现在发现了错误! "PDO::exec() [pdo.exec]: 禁止加载数据本地文件"
-
Web 服务器中的文件不是我定义为本地文件的文件...它真的适用于旧版扩展吗?
-
<?php $server = "localhost"; $benutzername = "root"; $passwort = ""; $datenbank = "zanox"; mysql_connect($server,$benutzername,$passwort) or die ("No Connection"); mysql_select_db($datenbank) or die ("No Database found!"); // Datenbankanweisung $sql = "LOAD DATA LOCAL INFILE 'http://localhost/test1.csv' INTO TABLE de FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '\"' LINES TERMINATED BY '\n' (name,link,price,brand,imageurl)"; $db = mysql_query($sql) or die (mysql_error()); ?>这是我的旧代码。它工作正常 -
如果这是一个一次性的 php ......只需从 CLI 客户端运行查询......完成并完成。 :-)