Я создал простой запрос на получение записей из моей базы данных и передачу его в html. Я хочу, чтобы добавить кнопку редактирования/просмотра для каждой строки, так после некоторых исследований, я закончил с этим:Добавление кнопки редактирования в каждую строку таблицы для обновления базы данных в PHP
$query = mysqli_query($con, "SELECT * FROM mytable") or die(mysqli_error($con));
if(mysqli_num_rows($query) > 0) {
while($row = mysqli_fetch_array($query)) {
echo "<tr><td>".$row['pId']."</td>";
echo "<td>".$row['data1']."</td>";
echo "<td>".$row['data2']."</td>";
echo "<td><form action='detailform.php' method='POST'><input type='hidden' name='tempId' value='".$row["pId"]."'/><input type='submit' name='submit-btn' value='View/Update Details' /><form></td>";
}
}
Это прекрасно работает 1 записей. Но если у меня 2 или более, последняя запись всегда извлекается независимо от выбранной вами записи. Например, если у вас есть 5 записей и вы выбираете любую запись, 5-я запись всегда будет выбрана, поэтому я не смогу обновить предыдущие записи. Почему это происходит? Я что-то упускаю?
Не уверен, если это поможет мой случай, но вот моя основная логика моего detailform.php:
if(isset($_POST["tempId"]){
//pass data using post then update. Here's where I keep getting only the latest record regardless of selected record from previous page
} else { //add data }
Well doh * facepalms. Я смотрел на код в течение 8 часов подряд, поэтому я полностью пропустил это. По-видимому, это единственное, чего мне не хватает. Большое спасибо! – user1597438