Я получаю сообщение об ошибке;UPDATE MULTI ROW
Примечание: Undefined смещение: 0 на линии 93
Мой PHP код выглядит следующим образом ниже код ..
$i=0;
while ($ww=mysqli_fetch_array($query))
{
if ($i%2==0)
$class="evenRow";
else
$class="oddRow";
$id=$ww[0];
$studentid=$ww[1];
$name=$ww[2];
$kelompok=$ww[8];
$block=$ww[9];
$level=$ww[10];
$house=$ww[11];
$status=$ww[14];
echo "<tr>
<input type=hidden name=applyid[] value=".$id."/>
<td>$studentid</td>
<td>$name</td>
<td>$kelompok</td>
<td>$block</a></td>
<td>$level</td>
<td>$house</td>
<td>
<input type=checkbox name=status approved checked> APPROVED <br>
</td>
</tr>";
}
$i++;
echo "</table>";
Это ошибка в строке 93: $checkbox[] .= $_POST['applyid'][$i];}
И SQL-запрос для обновления статуса выглядит следующим образом:
<?php
include("connection.php");
$checkbox = array();
if(isset($_POST['applyid']))
{
$check = count($_POST['applyid']);
for($i=0;$i<$check;$i++){
$checkbox[] .= $_POST['applyid'][$i];}
$check = "('" . implode("','", $checkbox) . "');" ;
$sql="UPDATE application SET apply_status = 'APPROVED' WHERE apply_id IN $check" ;
$result = mysqli_query($con, $sql) or die(mysqli_error($con));
}
?>
Я хочу обновить несколько строк, выбранных с помощью флажка. Это выход таблицы Click Here
....................................... .......................................
СМОТРЕТЬ СОГЛАШЕНИЕ О ПРОДВИЖЕНИИ:
Это мой код, если только только apply_status = 'PENDING'
будет просматривать.
Я добавляю инструкцию if else ... но не работает. если есть несколько apply_status = approved
. Это не покажет ожидающий. Но если нет apply_status = aprroved
. Он будет просматривать все приложения.
<?php
include("connection.php");
$sql="SELECT * FROM application";
$record = mysqli_query($con, $sql) or die ("error".mysqli_error($con));
$apply = mysqli_fetch_assoc($record);
$status1 = $apply["apply_status"];
if ($status1 == "APPROVED") {
echo "<br>";
echo "No application from student yet.<br>";
echo "<br>";
} else {
echo "<table border='1'><tr>
<td><strong>Student ID</strong></td>
<td><strong>Student Name</strong></td>
<td><strong>Kelompok</strong></td>
<td><strong>Block</strong></td>
<td><strong>Level</strong></td>
<td><strong>House</strong></td>
<td><strong>Status</strong></td>
</tr>";
$i=0;
while ($ww=mysqli_fetch_array($query))
{
if ($i%2==0)
$class="evenRow";
else
$class="oddRow";
$id=$ww[0];
$studentid=$ww[1];
$name=$ww[2];
$kelompok=$ww[8];
$block=$ww[9];
$level=$ww[10];
$house=$ww[11];
$status=$ww[14];
echo '<tr>
<input type="hidden" name="applyid['.$i.']" value="'.$id.'"/>
<td>'.$studentid.'</td>
<td>'.$name.'</td>
<td>'.$kelompok.'</td>
<td>'.$block.'</a></td>
<td>'.$level.'</td>
<td>'.$house.'</td>
<td>
<input type="checkbox" name="status['.$i.']" value="approved" checked> APPROVED <br>
</td>
</tr>';
$i++;
}
echo '</table>';
}
?>
, какой код находится на линии 93? undefined offset означает, что PHP не может получить доступ к массиву, нет индекса 0. Попробуйте '' 'echo $ _POST ['applyid'] [0];' '', что такое вывод –
Это действительно очень неясно. Поэтому я попытаюсь понять, чего вы пытаетесь достичь. вы проверяете, установлен ли флажок: «Утвержден статус одобрен» (кстати, а назовите его одним словом), если он установлен, чтобы статус был одобрен? –
жаль, что я не вижу типа «значение». его предположим, что имя = статус = утверждено. «Проверено» означает, что кнопка проверки автоматически галочка. если пользователь не хочет его проверять, ему просто нужно отпереть кнопку. @CraigBezuidenhout –