我成功地通过来自http://www.phpclasses.org/browse/package/6279/download/zip.html的一些php文件以表格形式在我的php页面上显示excel表格数据,我试图通过下面的代码将每列表格的文本存储到数据库中,但我得到了注意:未定义的索引:feed10
代码是
<html>
<head>
<title>Upload</title>
</head>
<body>
<form method="post" enctype="multipart/form-data" >
Upload file (*.XLSX file) <input type="file" name="file" value="" /><input type="submit" value="Upload" />
</form>
<form method="post" enctype="multipart/form-data" action="loadPHP.php">
<?php
if (isset($_FILES['file'])) {
require_once "simplexlsx.class.php";
$row = 0;
$xlsx = new SimpleXLSX( $_FILES['file']['tmp_name'] );
echo '<h2>Uploaded Data</h2>';
echo '<table >';
list($cols,) = $xlsx->dimension();
foreach( $xlsx->rows() as $k => $r) {
// if ($k == 0) continue; // skip first row
echo '<tr>';
for( $i = 0; $i < $cols; $i++) {
echo '<td name="feed'.$row.''.$i.'">'.( (isset($r[$i])) ? $r[$i] : ' ' ).'</td>';
}
echo '</tr>';
$row++;
}
echo '</table>';
echo '<input type="submit" value="Load in Database"/>';
}
?>
</form>
</div>
</body>
</html>
loadPHP.php
<?php
session_start();
$rw=1;
$result='';
$con=mysql_connect("localhost","root","12345");
if(!$con) {
die('could not connect'.mysql_error());
}
mysql_select_db("birt",$con);
for( $col = 0; $col < 2; $col++ ){
$day=$_POST['feed'.$rw.''.$col.''];
$order = "INSERT INTO lecture_plan (topic ) VALUES ('$day')";
$result = mysql_query($order);
}
if($result){
header('Location: simplexlsx.example3.php');
} else{
echo("<br>Input data is fail");
}
mysql_close($con);
?>`
答案 0 :(得分:1)
数据未通过表单提交,因为您是直接在td标记中设置的。
尝试将数据移动到隐藏输入,如下所示:
echo '<td>'.( (isset($r[$i])) ? $r[$i] : ' ' ).' <input type="hidden" name="feed'.$row.''.$i.'" value="'.( (isset($r[$i])) ? $r[$i] : null ).'" /></td>';