我有一个PHP文件,它有一个表格应该发送1060个条目(从1060个文本框)到PHP文件
然后将它们添加到数据库中。但是从第711个文本框到第1060个,
它没有检索任何内容并向我发送Undefined index
SQL错误。
除了一些数字被更改之外,1060个文本框基本上具有相同的代码。 是否可以检索的文本框数量有限制?如果有限制,有没有办法增加它? (我正在使用WAMP /我没有使用GET
方法,仅使用POST
)
部分 此代码在同一页面上重复1,060次,仅更改数字(db1,db2等)它是也在表单(<form></form>
)内,有一个SUBMIT
按钮,基本上已完成。:
<?php
$username=$_SESSION['username'];
echo " <script type=text/javascript>
var hidden = false;
function actiondb143() {
if(!hidden) {
document.getElementById('clickdb143').style.visibility = 'visible';
document.getElementById('db143').style.visibility = 'visible';
document.getElementById('db143').value = value='".$username."';
}
}
</script>
";
echo "</head>";
echo "<body>";
$country="Philippines";
$curdate=$_SESSION["curdate"];
$checker=mysqli_fetch_array(mysqli_query($con, "SELECT colDoneBy FROM tblChecklist WHERE colEntryID='143' AND colDate='$curdate' AND colCountry='$country'"));
if($checker[0] != NULL){
$result=mysqli_query($con,"SELECT * from tblChecklist WHERE colEntryID='143' AND colDate='$curdate'");
while($row=mysqli_fetch_array($result))
{
echo "<center><table border=0 width=100><font face=arial>";
echo "<td width=100 bgcolor=#844BA13>";
echo "<input type=text name=db143 value=".$row["colDoneBy"]." size=12 readonly>";
echo "</td>";
echo "</font></table></center>";
}
}
else {
echo "<table border=0 width=100><font face=arial>";
echo "<td width=100 bgcolor=#C44448>";
echo "<div class=buttonasglobal><input type=button value=' VERIFY 'name=clickdb143 onClick='actiondb143()'; style=\"left:100;\"></div>";
echo "<div class=textasglobal><input type=text name=db143 style=\"visibility:hidden; width:80px;\" readonly>";
echo "</td>";
echo "</font></table>";
}
?>
部件 在数据库中添加数据的PHP代码( 再次,重复1,060次,仅按数字更改) :
<html>
<head>
<title>Jobsheets+</title>
<script type=text/javascript>
function getDate(){
document.getElementById('curdate').value =new Date().toLocaleDateString();
}
</script>
</head>
<body onLoad = 'getDate();' background="bgimage.jpg">
<?php
session_start();
$con=mysqli_connect("localhost","root","","dbjobsheets");
if (mysqli_connect_errno($con))
{
echo "Failed to connect to MySQL " . mysqli_connect_error();
}
$curdate=$_SESSION["curdate"];
mysqli_query($con,"UPDATE tblChecklist SET colActualStart='$_POST[as143]', colActualEnd='$_POST[ad143]', colRemarks='$_POST[jr143]', colDoneBy='$_POST[db143]', colCheckedBy='$_POST[cb143]' WHERE colEntryID='143' AND colDate='$curdate'");
mysqli_close($con);
?>
</body>
</html>
答案 0 :(得分:1)
您的来源的重要部分缺失,所以我只能猜测。
我正在使用那些1000多个输入框进行GET
我可能会爆炸然后最大值。网址长度。
某些防火墙,代理服务器和Web服务器将网址限制为1024字节。
您的表单应该执行POST
,然后数据ins在正文中传输,并且仅受PHP中的max_post_size限制。
您的代码包含SQL-INJECTION。使用参数而不是动态创建SQL。
PHP人员引入了哈希冲突错误的限制。
max_input_vars
也许这也会在这里播放。