简体   繁体   中英

how to get full path of uploaded file in php?

My code snippet so far:

if(isset($_POST['submit']))  {
    $uploaddir = '/www/csvExtraction/uploads/';
    $uploadfile = $uploaddir . basename($_FILES['file']['name']);
    if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) {
    }

Still i get this error

Undefined index: file in C:\\wamp\\www\\csvExtraction\\index.php


Whole Code :

if(!$db)

die("no db");

if(!mysqli_select_db($db,"phptester"))

die("No database selected.");

if(isset($_POST['submit']))
{
$uploaddir = '/www/csvExtraction/uploads/';
$uploadfile = $uploaddir . basename($_FILES['file']['name']);

if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) 
{

$handle = fopen("$uploadfile", "r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE)
{
$import="INSERT into sample(id,name,address) values('$data[0]','$data[1]','$data[2]')";
mysqli_query($import) or die(mysql_error());
}
fclose($handle);
print "Import done";
}
}
else

{

print "<form action='index.php' method='post'>";

print "Choose file to import:<br><br>";

print "<input type='file' name='file' id='file'><br><br>";

//print "<input type='text' name='filename' size='20'><br>";

print "<input type='submit' name='submit' value='extract'></form>";

}
 ?>

I got a solution.

<?php
$db = mysqli_connect("localhost", "root", "") or die("could not connect");

if(!$db)

die("no db");

if(!mysqli_select_db($db,"phptester"))

die("No database selected.");

if(isset($_POST['submit']))
{
$uploaddir = 'uploads/';
$uploadfile = $uploaddir . basename($_FILES["file"]["name"]);
echo $uploadfile;


if (move_uploaded_file($_FILES["file"]["tmp_name"], $uploadfile)) 
{

$handle = fopen("$uploadfile", "r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE)
{
$import="INSERT into sample(id,name,address) values('$data[0]','$data[1]','$data[2]')";
mysqli_query($db,$import) or die(mysql_error());
}
fclose($handle);
print "Import done";
}
}
else
{
print "<form action='index.php' method='post' enctype='multipart/form-data'>";
print "Choose file to import:<br><br>";
print "<input type='file' name='file' id='file'><br><br>";
print "<input type='submit' name='submit' value='extract'></form>";
}
?>

Please check $_FILES['file']['name'] != ''

before

$uploadfile = $uploaddir . basename($_FILES['file']['name']);

and then retrieve it

Also, check print_r($_FILES) and see if you get anything there ?;

检查你的表格是enctype="multipart/form-data"包含这个attr或不包含

请确保您的HTML代码中的以下内容正确无误。

<input type="file" name="file">

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM