Php 来自数组的HTML未在MS Edge中随机发布
我有一个带有一些PHP的HTML表单,在MS Edge或Internet Explorer中使用时,大多数情况下不会在表单中发布数据。在Google Chrome中运行良好。我读到过类似的问题,并建议对它们进行修复,用PHP调整服务器上的设置,这些都对我有影响 我还注意到Apache错误日志中记录了一个“PHP堆栈跟踪:,”。但这种情况发生在Edge和Chrome中 这是我的表格Php 来自数组的HTML未在MS Edge中随机发布,php,html,arrays,forms,Php,Html,Arrays,Forms,我有一个带有一些PHP的HTML表单,在MS Edge或Internet Explorer中使用时,大多数情况下不会在表单中发布数据。在Google Chrome中运行良好。我读到过类似的问题,并建议对它们进行修复,用PHP调整服务器上的设置,这些都对我有影响 我还注意到Apache错误日志中记录了一个“PHP堆栈跟踪:,”。但这种情况发生在Edge和Chrome中 这是我的表格 <!DOCTYPE HTML> <html lang="en"> <?p
<!DOCTYPE HTML>
<html lang="en">
<?php
session_start();
if (isset($_POST['homegroup'])){
$HOMEGROUP = $_POST['homegroup'];
}
include "connection.php"; //Connect to Database
?>
<head>
<link rel="stylesheet" type="text/css" href="default.css">
</head>
<body>
<form name="data" method="post" action="record.php">
<table border="1" align="center" class="title">
<tbody>
<tr>
<th colspan="7">
<?php
echo $HOMEGROUP;
?>
</th>
</tr>
<tr>
<td colspan="7" align="center" class="title2">
<p>Please enter uniform infringement details in the text boxes bellow. Leave blank if no infringement.</p>
</td>
</tr>
<tr>
<td colspan="7">
<?php
$sql = "SELECT `registration`, `FIRST_NAME`, `SURNAME`, `GENDER`, `SCHOOL_YEAR`, `ROLL_GROUP`, `HOUSE` FROM `students` WHERE `ROLL_GROUP`='$HOMEGROUP' AND STATUS = 'FULL' or 'PART' ORDER BY `SURNAME` ASC";
$result = mysqli_query($con, $sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
//echo $row["FIRST_NAME"]. " " . $row["SURNAME"]. " " . $row["GENDER"]. " " . $row["SCHOOL_YEAR"]. " " . $row["ROLL_GROUP"]. " " . $row["HOUSE"]. "<br>"; -OLD
echo '<tr class="datarow">';
echo '<td align="center">';
echo '<a href="photos17\\'.$row['SURNAME'].", ".$row['FIRST_NAME'].'.jpg" target="_blank"><img src="photos17\\'.$row['SURNAME'].", ".$row['FIRST_NAME'].'.jpg" height="60"></a>';
echo '</td>';
echo '<td class="combname">
<input class="combname" style="border:none" readonly="" type="text" size="25" name="comb_name[]" value=" ' . $row['FIRST_NAME']. " " . $row['SURNAME'].' ">
<input style="border:none" readonly="" type="hidden" name="first_name[]" value="'.$row['FIRST_NAME'].'">
<input style="border:none" readonly="" type="hidden" name="surname[]" value="'.$row['SURNAME'].'">
<input style="border:none" readonly="" type="hidden" name="registration[]" value="'.$row['registration'].'">
</td>';
echo '<td class="items">
Hat:<select name="hat[]">
<option value="0" selected="selected"></option>
<option value="1">Y</option>
</select><br>Jewellery:<select name="jewellery[]">
<option value="0" selected="selected"></option>
<option value="1">Y</option>
</select>
</td>';
echo '<td class="items">
Socks:<select name="socks[]">
<option value="0" selected="selected"></option>
<option value="1">Y</option>
</select><br>Make Up:<select name="makeup[]">
<option value="0" selected="selected"></option>
<option value="1">Y</option>
</select>
</td>';
echo '<td class="items">
Hair:<select name="hair[]">
<option value="0" selected="selected"></option>
<option value="1">Y</option>
</select><br>Shoes:<select name="shoes[]">
<option value="0" selected="selected"></option>
<option value="1">Y</option>
</select>
</td>';
echo '<td class="items">
Incorrect Uniform:<select name="icuniform[]">
<option value="0" selected="selected"></option>
<option value="1">Y</option>
</select><br>Incorrect PE Uniform:<select name="icpeuniform[]">
<option value="0" selected="selected"></option>
<option value="1">Y</option>
</select>
</td>';
echo '<td class="items">Other: <br>
<input type="text" size="15" id="infringement" name="infringement[]" value="">
<input type="hidden" name="gender[]" value="'.$row['GENDER'].'">
<input type="hidden" name="year[]" value="'.$row['SCHOOL_YEAR'].'">
<input type="hidden" name="rollgroup[]" value="'.$row['ROLL_GROUP'].'">
<input type="hidden" name="house[]" value="'.$row['HOUSE'].'">
<input type="hidden" name="user[]" value="$user"></td>';
echo '</tr>';
}
} else {
header("location: nostudents.php");
}
?>
<tr>
<td colspan="2" align="left">
<input type="button" onclick="location.href='search.php';" name="back" value="Back">
</td>
<td colspan="5" align="right">
<input type="submit" name="save" value="Save Infringements">
</td>
</tr>
</tbody>
</table>
</form>
</body>
</html>
请在下面的文本框中输入统一侵权详细信息。如果没有侵权,请留空
php中有什么?我删除了我的答案,因为它不起作用。下一步是使用F12启动Edge developer工具。检查DOM资源管理器以确保其正确。可能您在某个地方有一个错误的标记,导致Edge过早结束表单。如果HTML结构看起来不错,发布表单并使用“网络”选项卡查看Edge是否确实发送了任何post数据。当我在该页面上加载DOM Explorer时,它会显示为空白,这看起来很奇怪。查看“网络”选项卡,每次提交表单时都会有一篇帖子,不管数组是否有数据或只是“array()”,我再次仔细检查了一遍。比较了从Edge到Chrome的html输出,它们都显示完全相同的内容,并在开头添加了少量额外空间。这太令人沮丧了。我们会的。我被卡住了。还有其他建议吗?record.php中有什么?我删除了我的答案,因为它不起作用。下一步是使用F12启动Edge developer工具。检查DOM资源管理器以确保其正确。可能您在某个地方有一个错误的标记,导致Edge过早结束表单。如果HTML结构看起来不错,发布表单并使用“网络”选项卡查看Edge是否确实发送了任何post数据。当我在该页面上加载DOM Explorer时,它会显示为空白,这看起来很奇怪。查看“网络”选项卡,每次提交表单时都会有一篇帖子,不管数组是否有数据或只是“array()”,我再次仔细检查了一遍。比较了从Edge到Chrome的html输出,它们都显示完全相同的内容,并在开头添加了少量额外空间。这太令人沮丧了。我们会的。我被卡住了。还有其他建议吗?
<link rel="stylesheet" type="text/css" href="default.css" />
<?php
//session_start();
include "connection.php"; //Connect to Database
//Un-comment bellow to view entire array from previous form.
'<pre>'.print_r($_POST).'</pre>';
echo "<br>";
echo "<br>";
if (!empty($_POST) ){
foreach(($_POST['registration']) as $key=>$row)
{
$registration = $row;
if (!empty($_POST['infringement'][$key]) ){
$infringement = $_POST['infringement'][$key];
} else {
$infringement = '';
}
if (!empty($_POST['surname'][$key]) ){
$surname = $_POST['surname'][$key];
} else {
$surname = '';
}
if (!empty($_POST['first_name'][$key]) ){
$first_name = $_POST['first_name'][$key];
} else {
$first_name = '';
}
if (!empty($_POST['gender'][$key]) ){
$gender = $_POST['gender'][$key];
} else {
$gender = '';
}
if (!empty($_POST['year'][$key]) ){
$year = $_POST['year'][$key];
} else {
$year = '';
}
if (!empty($_POST['rollgroup'][$key]) ){
$rollgroup = $_POST['rollgroup'][$key];
} else {
$rollgroup = '';
}
if (!empty($_POST['house'][$key]) ){
$house = $_POST['house'][$key];
} else {
$house = '';
}
if (!empty($_POST['user'][$key]) ){
$user = $_POST['user'][$key];
} else {
$user = '';
}
if (!empty($_POST['hat'][$key]) ){
$hat = $_POST['hat'][$key];
} else{
$hat = '';
}
if (!empty($_POST['jewellery'][$key]) ){
$jewellery = $_POST['jewellery'][$key];
} else {
$jewellery = '';
}
if (!empty($_POST['socks'][$key]) ){
$socks = $_POST['socks'][$key];
} else {
$socks = '';
}
if (!empty($_POST['makeup'][$key]) ){
$makeup = $_POST['makeup'][$key];
} else {
$makeup = '';
}
if (!empty($_POST['hair'][$key]) ){
$hair = $_POST['hair'][$key];
} else {
$hair = '';
}
if (!empty($_POST['shoes'][$key]) ){
$shoes = $_POST['shoes'][$key];
} else {
$shoes = '';
}
if (!empty($_POST['icuniform'][$key]) ){
$icuniform = $_POST['icuniform'][$key];
} else {
$icuniform = '';
}
if (!empty($_POST['icpeuniform'][$key]) ){
$icpeuniform = $_POST['icpeuniform'][$key];
} else {
$icpeuniform = '';
}
$date = "NOW()";
$first_name=mysqli_real_escape_string($con,$first_name);
$surname=mysqli_real_escape_string($con,$surname);
//echo $key;
//echo $row;
//echo $hat;
if(!empty($infringement) OR !empty($hat) OR !empty($jewellery) OR !empty($socks) OR !empty($makeup) OR !empty($hair) OR !empty($shoes) OR !empty($icuniform) OR !empty($icpeuniform) OR !empty($infringement))
{
$sql = "INSERT INTO infringements
(id, registration, first_name, surname, infringement, gender, school_year, roll_group, house, hat, jewellery, socks, makeup, hair, shoes, icuniform, icpeuniform, user, submittime)
VALUES (null,'{$registration}','{$first_name}','{$surname}','{$infringement}','{$gender}','{$year}','{$rollgroup}','{$house}','{$hat}','{$jewellery}','{$socks}','{$makeup}','{$hair}','{$shoes}','{$icuniform}','{$icpeuniform}','{$user}',{$date})";
$result = mysqli_query($con, $sql) or die(mysqli_error($con));
//Un-commend bellow to view SQL input query.
echo $sql;
echo "<br>";
}
}
header("location: record.php");
unset($_POST);
}
?>
<table align='center'>
<tr>
<td class='title2'>
<br>
<h1>Uniform Infringement:</h1>
</td>
</tr>
<tr>
<td align='center'>
<p> Thank you, your Uniform Infringements have been recorded.</p>
</td>
</tr>
<tr>
<td align="center">
<br>
<br>
</td>