gpt4 book ai didi

php - 使用生成表中的 PHP 代码更新 SQL 表

转载 作者:行者123 更新时间:2023-11-29 12:13:48 24 4
gpt4 key购买 nike

有人可以帮我找出为什么这不起作用吗?

我的更新功能无法在我的 php 代码上运行。我有一个断点,列出了 for 循环末尾的所有信息,这是正确的信息。但每个 ID 会打印大约 50 次。此外,它不会更新 SQL 表。

我该如何解决这个问题?

片段:

if ( isset( $_POST[ 'RemarketingRollCall' ] ) )
{

echo 'RollCall called ';
foreach($_POST['userid'] as $param1){
foreach($_POST['name'] as $param2){
foreach($_POST['job'] as $param3){
foreach($_POST['monday'] as $param4){
foreach($_POST['tuesday'] as $param5){
foreach($_POST['wednesday'] as $param6){
foreach($_POST['thursday'] as $param7){
foreach($_POST['friday'] as $param8){

$idnumber = mysqli_real_escape_string( $con, $param1 );
$Name = mysqli_real_escape_string( $con, $param2 );
$Job = mysqli_real_escape_string( $con, $param3 );
$Monday = mysqli_real_escape_string( $con, $param4 );
$Tuesday = mysqli_real_escape_string( $con, $param5 );
$Wednesday = mysqli_real_escape_string( $con, $param6 );
$Thursday = mysqli_real_escape_string( $con, $param7 );
$Friday = mysqli_real_escape_string( $con, $param8 );

echo "(". $idnumber . " " . $Name . " " . $Job . " " . $Monday . " " . $Tuesday . " " . $Wednesday . " " . $Thursday . " " . $Friday . ")";
$sql = "UPDATE `Employee` SET `Job`='$Job', `Monday`='$Monday', `Tuesday`='$Tuesday', `Wednesday`='$Wednesday', `Thursday`='$Thursday', `Friday`='$Friday' WHERE `ID`=$idnumber";
mysqli_query($con,$sql);
if ( !mysqli_query( $con, $sql ) )
{
die( 'Error: ' . mysqli_error( $con ) );
}
}
}
}
}
}
}
}
}
mysqli_close( $con );
?>
//putting a script here

这是输出:http://gyazo.com/3006df320d4857314ea486936f656ba3

这是我的表格生成:

while($row = mysqli_fetch_array($remarketingRoll)) {
echo "<form id='RemarketingRollCall' method='POST'>";
echo "<tr>";
echo "<td contenteditable='false' align='center' width='11%'><input style='verticle-align:center;' type='text' name='userId[]' value=". $row['userId'] ." readonly></td>";
echo "<td contenteditable='false' align='center' width='11%'><input style='verticle-align:center;' type='text' name='name[]' value=". $row['Name'] ." readonly></td>";
echo "<td contenteditable='false' align='center' width='11%'>
<select name='job[]'>
<option value='Remarketing'>Remarketing</option>
<option value='IOS'>IOS</option>
<option value='Computers'>Computers</option>
</select></td>";
if ( strcmp( $row['Monday'], 'Attended' ) == 0 ){
echo "<td contenteditable='false' align='center' width='11%'>
<select name='monday[]'>
<option value='Attended''>Attended</option>
<option value='Absent'>Absent</option>
</select></td>";
} else if ( strcmp( $row['Monday'], 'Absent' ) == 0 ){
echo "<td contenteditable='false' align='center' width='11%'>
<select name='monday[]'>
<option value='Absent'>Absent</option>
<option value='Attended''>Attended</option>
</select></td>";
} else {
echo "<td contenteditable='false' align='center' width='11%'>
<select name='monday[]'>
<option> </option>
<option value='Absent'>Absent</option>
<option value='Attended''>Attended</option>
</select></td>";
}
if ( strcmp( $row['Tuesday'], 'Attended' ) == 0 ){
echo "<td contenteditable='false' align='center' width='11%'>
<select name='tuesday[]'>
<option value='Attended''>Attended</option>
<option value='Absent'>Absent</option>
</select></td>";
} else if ( strcmp( $row['Tuesday'], 'Absent' ) == 0 ){
echo "<td contenteditable='false' align='center' width='11%'>
<select name='tuesday[]'>
<option value='Absent'>Absent</option>
<option value='Attended''>Attended</option>
</select></td>";
} else {
echo "<td contenteditable='false' align='center' width='11%'>
<select name='tuesday[]'>
<option> </option>
<option value='Absent'>Absent</option>
<option value='Attended''>Attended</option>
</select></td>";
}
if ( strcmp( $row['Wednesday'], 'Attended' ) == 0 ){
echo "<td contenteditable='false' align='center' width='11%'>
<select name='wednesday[]'>
<option value='Attended''>Attended</option>
<option value='Absent'>Absent</option>
</select></td>";
} else if ( strcmp( $row['Wednesday'], 'Absent' ) == 0 ){
echo "<td contenteditable='false' align='center' width='11%'>
<select name='wednesday[]'>
<option value='Absent'>Absent</option>
<option value='Attended''>Attended</option>
</select></td>";
} else {
echo "<td contenteditable='false' align='center' width='11%'>
<select name='wednesday[]'>
<option> </option>
<option value='Absent'>Absent</option>
<option value='Attended''>Attended</option>
</select></td>";
}
if ( strcmp( $row['Thursday'], 'Attended' ) == 0 ){
echo "<td contenteditable='false' align='center' width='11%'>
<select name='thursday[]'>
<option value='Attended''>Attended</option>
<option value='Absent'>Absent</option>
</select></td>";
} else if ( strcmp( $row['Thursday'], 'Absent' ) == 0 ){
echo "<td contenteditable='false' align='center' width='11%'>
<select name='thursday[]'>
<option value='Absent'>Absent</option>
<option value='Attended''>Attended</option>
</select></td>";
} else {
echo "<td contenteditable='false' align='center' width='11%'>
<select name='thursday[]'>
<option> </option>
<option value='Absent'>Absent</option>
<option value='Attended''>Attended</option>
</select></td>";
}
if ( strcmp( $row['Friday'], 'Attended' ) == 0 ){
echo "<td contenteditable='false' align='center' width='11%'>
<select name='friday[]'>
<option value='Attended''>Attended</option>
<option value='Absent'>Absent</option>
</select></td>";
} else if ( strcmp( $row['Friday'], 'Absent' ) == 0 ){
echo "<td contenteditable='false' align='center' width='11%'>
<select name='friday[]'>
<option value='Absent'>Absent</option>
<option value='Attended''>Attended</option>
</select></td>";
} else {
echo "<td contenteditable='false' align='center' width='11%'>
<select name='friday[]'>
<option> </option>
<option value='Absent'>Absent</option>
<option value='Attended''>Attended</option>
</select></td>";
}
echo "<td name='week[]' contenteditable='false' align='center' width='11%'>" . $row['Week'] . "</td>";
echo "</tr>";
echo "</form>";
}

最佳答案

 $index = 0;
foreach ($_POST as $key => $value){
$idnumber = $_POST['userId'][$index];
$Name = $_POST['name'][$index];
$Job = $_POST['job'][$index];
$Monday = $_POST['monday'][$index];
$Tuesday = $_POST['tuesday'][$index];
$Wednesday = $_POST['wednesday'][$index];
$Thursday = $_POST['thursday'][$index];
$Friday = $_POST['friday'][$index];
$index++;
// put your sql UPDATE here
}

暂时不显示右大括号{

  </select></td>";
}
echo "<td name='week[]' contenteditable='false' align='center' width='11%'>" . $row['Week'] . "</td>";
echo "</tr>";
echo "</form>";

如果在这里:

  </select></td>";
}
echo "<td name='week[]' contenteditable='false' align='center' width='11%'>" . $row['Week'] . "</td>";
echo "</tr>";
echo "</form>";
} // is it here????????????

如果支架在我认为的位置,您需要将其移至此处

  </select></td>";
}

echo "<td name='week[]' contenteditable='false' align='center' width='11%'>" . $row['Week'] . "</td>";
echo "</tr>";
} // <==========================
echo "</form>";

并移动:

while($row = mysqli_fetch_array($remarketingRoll)) {
echo "<form id='RemarketingRollCall' method='POST'>";

致:

echo "<form id='RemarketingRollCall' method='POST'>";
while($row = mysqli_fetch_array($remarketingRoll)) {

更新2

替换:

$idnumber = mysqli_real_escape_string( $con, $param1 );
$Name = mysqli_real_escape_string( $con, $param2 );
$Job = mysqli_real_escape_string( $con, $param3 );
$Monday = mysqli_real_escape_string( $con, $param4 );
$Tuesday = mysqli_real_escape_string( $con, $param5 );
$Wednesday = mysqli_real_escape_string( $con, $param6 );
$Thursday = mysqli_real_escape_string( $con, $param7 );
$Friday = mysqli_real_escape_string( $con, $param8 );

与:

$idnumber = $_POST['userId'][0];
$Name = $_POST['name'][0];
$Job = $_POST['job'][0];
$Monday = $_POST['monday'][0];
$Tuesday = $_POST['tuesday'][0];
$Wednesday = $_POST['wednesday'][0];
$Thursday = $_POST['thursday'][0];
$Friday = $_POST['friday'][0];

更新 2 结束

<小时/>

更新

添加此行代码以转储正在提交的内容:

var_export($_POST);
<小时/>

不要使用foreach。

更改所有foreach:

$param2 = $_POST['name'];
$param3 = $_POST['job'];
$param4 = $_POST['monday'];
$param5 = $_POST['tuesday'];
$param6 = $_POST['wednesday'];
$param7 = $_POST['thursday'] ;
$param8 = $_POST['friday'];

致:

$param2 = $_POST['name'];
$param3 = $_POST['job'];
$param4 = $_POST['monday'];
$param5 = $_POST['tuesday'];
$param6 = $_POST['wednesday'];
$param7 = $_POST['thursday'] ;
$param8 = $_POST['friday'];

关于php - 使用生成表中的 PHP 代码更新 SQL 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30205485/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com