我正在尝试将文件从用户传输到我的服务器而不是上传文件,问题是当我知道文件名(硬编码)文件被正常上传时,文件被转移到我的文件夹但问题是我无法在我的fopen函数中获取文件名 . 我已尝试将其存储在变量中并尝试fopen($ a.csv,“r”)或fopen(($ _ FILES [“file”] [“name”] . csv “,”r“))但是得到错误Parse错误:语法错误,C:\ xampp \ htdocs \ pm \ upload.php中的意外T_CONSTANT_ENCAPSED_STRING就行......我的代码是否可以解决我的问题?
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "
";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "
";
echo "Type: " . $_FILES["file"]["type"] . "
";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb
";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "
";
if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
$a=$_FILES["file"]["name"];}
}
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}mysql_select_db("pm", $con);
$dum=false;
if (($handle = fopen($_FILES["file"]["name"].csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 10000, ",")) !== FALSE) {
. ...... ......
错误是在行 if (($handle = fopen($_FILES["file"]["name"].csv", "r")) !== FALSE) { 试图上传没有文件的扩展名!善意的帮助
1 回答
尝试:
您将文件移动到
upload
目录,这是您应该从中读取的目录 .