我有这个Four Array,我希望它使用Foreach
保存在Mysql上成功执行:按下“提交”按钮后,阵列上的数据已保存,但出现错误
错误: 未定义的偏移量:第10行的C:\ wamp \ www \ Sample \ index.php中的2
代码:
<?php
include('connection.php');
if(isset($_POST['Save'])){
$Array = $_POST['NOD'];
$Array2 = $_POST['Age'];
$Array3 = $_POST['DOB'];
$Array4 = $_POST['Relationship'];
$both_arrays = array_merge((array)$Array, (array)$Array1, (array)$Array2, (array)$Array3);
foreach(array_keys($both_arrays) as $i) {
$sql="INSERT INTO sample_tbl(Col,Col1,Col2,Col3)VALUES('$Array[$i]','$Array1[$i]','$Array2[$i]','$Array3[$i]')";
$result=mysql_query($sql,$con)or die(mysql_error());
}
在此行中显示错误:
$sql="INSERT INTO sample_tbl(Col,Col1,Col2,Col3)VALUES('$Array[$i]','$Array1[$i]','$Array2[$i]','$Array3[$i]')";
保存后的数据库结果:`
id Col Col1 Col2 Col3
1 11 11 11 11
2 22 22 22 22
3
4
5
6
7
8
(Auto) Null Null Null
从第3行到第8行,数据库中共保存了6个额外字段 你能帮我解决一下这个问题吗?以及第10行错误的问题?
答案 0 :(得分:0)
关于第10行的错误,您迭代而不是$both_arrays
来获取密钥,但您正试图访问 $Array
中的元素1}},$Array1
等等。
我认为你可能意味着写的是:
$sql="INSERT INTO sample_tbl(Col,Col1,Col2,Col3)VALUES
'$both_arrays[$i]', '$both_arrays[$i]',
'$both_arrays[$i]', '$both_arrays[$i]')";
我先解决这个问题,它也可以很好地解决您的狡猾数据插入问题。
答案 1 :(得分:0)
试用此代码
include('connection.php');
if(isset($_POST['Save'])){
$Array = $_POST['NOD'];
$Array2 = $_POST['Age'];
$Array3 = $_POST['DOB'];
$Array4 = $_POST['Relationship'];
foreach(array_keys($Array) as $i) {
$sql="INSERT INTO sample_tbl(Col,Col1,Col2,Col3)VALUES('$Array[$i]','$Array2[$i]','$Array3[$i]','$Array4[$i]')";
$result=mysql_query($sql,$con)or die(mysql_error());
}