我有一个表单,它的输入字段数目可变,我现在尝试在数据库中获取这些值。我从另一个问题得到了这个代码,所有的回复都暗示他们已经成功了…所以我想我在这里做错了什么。
我没有得到任何错误,它只是在我的数据库中输入一个空条目/行每次我提交表单。$\u post数组充满了我需要的所有数据,打印时会显示出来。
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (
!empty($_POST['homeTeam']) && !empty($_POST['awayTeam']) && !empty($_POST['homeWin']) && !empty($_POST['awayWin']) &&
is_array($_POST['homeTeam']) && is_array($_POST['awayTeam']) && is_array($_POST['homeWin']) && is_array($_POST['awayWin']) &&
count($_POST['homeWin']) === count($_POST['awayWin'])
) {
$homeTeam_array = $_POST['homeTeam'];
$awayTeam_array = $_POST['awayTeam'];
$homeWin_array = $_POST['homeWin'];
$awayWin_array = $_POST['awayWin'];
for ($i = 0; $i < count($homeTeam_array); $i++) {
$homeTeam = mysql_real_escape_string($homeTeam_array[$i]);
$awayTeam = mysql_real_escape_string($awayTeam_array[$i]);
$homeWin = mysql_real_escape_string($homeWin_array[$i]);
$awayWin = mysql_real_escape_string($awayWin_array[$i]);
$sql = "INSERT IGNORE INTO CalcOdds (homeTeam, awayTeam, homeWin, awayWin) VALUES ('$homeTeam', '$awayTeam', '$homeWin', '$awayWin')";
$conn->query($sql);
$conn->close();
}
}
echo "<pre>";
print_r($_POST);
echo "</pre>";
echo 'Done!';
}
?>
2条答案
按热度按时间de90aj5v1#
我认为问题是因为您有$conn->close();在for循环中,尝试将其添加到循环之后,如下所示:
jgwigjjp2#
而不是做!空()我会做isset()
从外观上看,您实际上还没有建立到数据库的连接。
例如,使用echo()确保数据实际通过if()语句。