gpt4 book ai didi

PHP MySQL - 使用 LOAD DATA INFILE 导入 CSV - 确定文件路径?

转载 作者:行者123 更新时间:2023-11-29 04:47:46 25 4
gpt4 key购买 nike

我需要一些帮助来连接这些点。周围有很多片段,但我还没有找到好的端到端教程。

对于我正在构建的简单自定义 CMS,我希望最终用户管理员可以选择上传其他用户的 CSV。 PHPMyAdmin 或其他对数据库的“直接”访问不适合我的环境。所以我正在尝试构建一个文件上传表单,然后将数据插入到适当的表中。

我找到了 this tutorial on building the upload form - 工作正常(虽然我想添加一些额外的验证/安全)。基于这里的几篇文章 (like this one),我认为使用 LOAD DATA INFILE 比尝试使用 fgetcsv 或其他东西进行循环和解析更有意义(但请随意不同意)。

这是我当前的代码 - 它不工作,我假设它是文件路径 - 我应该如何格式化它? _uploads 目录与此处理器文件位于同一位置。

$target_path = "_uploads/";

$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);

if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
echo "The file ". basename( $_FILES['uploadedfile']['name']).
" has been uploaded to " . $target_path;
} else{
echo "There was an error uploading the file, please try again!";
}

$sql = "LOAD DATA INFILE $target_path
INTO TABLE User
(UserFirstName, UserLastName)
FIELDS TERMINATED BY ',' ENCLOSED BY '\"' ESCAPED BY '\"'
LINES TERMINATED BY '\r\n'
";

$result = mysql_query($sql, $connection);

if (mysql_affected_rows() == 1) {
$message = "The user was successfully updated!";
} else {
$message = "The user update failed: ";
$message .= mysql_error();
}

echo $message;

任何关于体面教程的建议或指示将不胜感激。

最佳答案

您的问题是 PHP 在网络服务器上运行,MySQL 在数据库服务器上运行。我认为只要不涉及复制,丢失的“点”就可能是

LOAD DATA LOCAL INFILE

从客户端计算机读取。

(原创:http://dev.mysql.com/doc/refman/5.1/de/load-data.html)

截至 2018 年:https://dev.mysql.com/doc/refman/8.0/en/load-data.html

关于PHP MySQL - 使用 LOAD DATA INFILE 导入 CSV - 确定文件路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16450030/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com