我希望用户将csv文件上传到mysql数据库。当我运行upload.php
文件时,我在testcsv
表中看到的唯一更改是,表ID会增加。没有数据输入到表中。我使用excel 2013并将文件保存为CSV(MS-DOS)
。我收到了一堆错误,如下所示:
Notice: Undefined index: lec_name in C:\XAMPP\htdocs\statistics\upload.php on line 48
Notice: Undefined index: dept_name in C:\XAMPP\htdocs\statistics\upload.php on line 49
upload.php的
<html>
<head>
<link rel="stylesheet" type="text/css" href="../../statistics/style.css">
<body>
<div class="nav">
<ul>
<li><a href="../../statistics/principalForm.php">Principal</a></li>
<li><a href="../../statistics/ac_directorForm.php">Academic Director</a></li>
<li><a href="../../statistics/lecturerForm.php">Lecturer</a></li>
<li>
<a href="#">Admin</a>
<ul>
<li><a href="../../statistics/adminFormLecturer">Save Lecturer Scores</a></li>
<li><a href="../../statistics/adminFormServices">Save Services Scores</a></li>
</ul>
</li>
<li><a href="../../statistics/logout.php">Logout</a></li>
</ul>
</div>
<br />
<br />
<br />
<div id="myform">
<?php
include 'connect.php';
$deleterecords = "TRUNCATE TABLE testcsv"; //empty the table of its current records
mysql_query($deleterecords);
//Upload File
if (isset($_POST['submit'])) {
if (is_uploaded_file($_FILES['filename']['tmp_name'])) {
echo "<h1>" . "File ". $_FILES['filename']['name'] ." uploaded successfully." . "</h1>";
echo "<h2>Displaying contents:</h2>";
readfile($_FILES['filename']['tmp_name']);
}
//Import uploaded file to Database
$handle = fopen($_FILES['filename']['tmp_name'], "r");
while(($data = fgetcsv($handle, 1000, ",")) !== FALSE){
$value1=$_POST['lec_name'];
$value2=$_POST['dept_name'];
$import="INSERT into testcsv(lec_name,dept_name) values('$value1','$value2')";
mysql_query($import) or die(mysql_error());
}
fclose($handle);
print "Import done";
}
else {
print "Upload new csv by browsing to file and clicking on Upload<br />\n";
print "<form enctype='multipart/form-data' action='upload.php' method='post'>";
print "File name to import:<br /><br />\n";
print "<input size='50' type='file' name='filename'><br /><br />\n";
print "<input type='submit' name='submit' value='Upload'></form>";
}
?>
</div>
</body>
</head>
</html>
答案 0 :(得分:1)
更改代码
$value1=$_POST['lec_name'];
$value2=$_POST['dept_name'];
with:
$value1=$data[0];
$value2=$data[1];