Witam, widziałem w paru kodach, że tablica $_GET połączona z instrukcją SWITCH może służyć do nawigacji strony. Napisałem kod, który powoduje, że po kliknięciu usuń przy rekordzie z bazy danych, rekord ulega usunięciu. Jednak muszę kliknąć na usuń, aż dwa razy. W innych kodach jakoś to działa, u mnie nie. Czy coś jest nie tak :)?
try {
if (!file_exists("database.php")){
throw new PDOException("Plik dostępu do bazy danych nie został poprawnie załadowany.");
exit();
} else {
require_once "database.php";
require_once "utils.php";
$queryList = $db->prepare('SELECT idadmin, login, email, permissions FROM administracja');
$queryList->execute();
$resultList = $queryList->fetchAll();
if (isset($_GET['v'])) {
switch($_GET['v']) {
case 'usun':
$queryDel = $db->prepare('DELETE FROM administracja WHERE idadmin=:idadmin');
$queryDel->bindValue(':idadmin', $_GET['id'], PDO::PARAM_STR);
$queryDel->execute();
break;
case 'zmien': echo "zmien";
break;
default: echo"default";
break;
}
}
if ($queryList) {
?>
<html>
<head>
<meta charset="UTF-8">
<title> Panel zarządzania kontami użytkowników. </title>
</head>
<body>
<div id="container">
<table border= "1px" width="600px">
<tr>
<th> Lp. </th>
<th> Login </th>
<th> Uprawnienia </th>
<th> Usuń </th>
<th> Zmień </th>
</tr>
<?php
$i = 1;
foreach ($resultList as $val):
?>
<tr>
<td> <?= $i; ?> </td>
<td> <?= $val ['login']; ?> </td>
<td> <?= $val ['permissions']; ?> </td>
<td> <a href="start.php?v=usun&id=<?= $val ['idadmin']; ?>"> Usuń </a></td>
<td> <a href="start.php?v=zmien&id=<?= $val ['idadmin']; ?>"> Zmień </a></td>
</tr>
<?php $i++; endforeach;
?>
</table>
</div>
</body>
</html>
<?php
} else {
throw new PDOException('Błędne zapytanie do bazy danych.');
}
}
} catch (PDOException $e){
echo $e;
}