Witam, chciałem usuwać rekordy z bazy danych. Napisałem funkcje:
function DaneId(){
$connection = getConnection();
$pobrany_login = $_SESSION['login'];
$id_klienta = klientId();
$rezultat = $connection->query("SELECT id_dane from klient where id_klient= '$id_klienta'");
if (!$rezultat) {
throw new Exception($connection->error);
}
$resultArrayA = [];
while ($row = $rezultat->fetch_assoc()) {
$resultArrayA[$row['id_dane']] = $row['id_dane'];
}
foreach ($resultArrayA as $key => $value)
echo "<br>DANE".$value."<br><br>";
return $value;
}
takie same są dla adresu i klienta. Funkcja usun wygląda następująco:
function usun()
{
$connection = getConnection();
$id_klienta = klientId();
$id_adresu = AdresId();
$id_danych = DaneId();
echo "<br> Id klienta".$id_klienta;
echo "<br> Id dane".$id_danych;
echo "<br> Id adresu".$id_adresu;
$rezultat1 = 'DELETE FROM ADRES where id_adres= "%1$s"' ;
$rezultat2 = 'DELETE FROM DANE where id_dane= "%1$s"';
$rezultat3 = 'DELETE FROM KLIENT where id_klient= "%1$s"';
$rezultat4 = 'DELETE FROM UZYTKOWNIK where klient_id= "%1$s"';
$deleteAdres = $connection->query(sprintf($rezultat1,$id_adresu));
$deleteDane = $connection->query(sprintf($rezultat2,$id_danych));
$deleteKlient = $connection->query(sprintf($rezultat3,$id_klienta));
$deleteUzytkownik = $connection->query(sprintf($rezultat4,$id_klienta));
if ($deleteAdres && $deleteDane && $deleteKlient && $deleteUzytkownik) {
$_SESSION['usuniecie'] = true;
header('Location: witamy.php');
} else {
$_SESSION['e_usuniecie'] = "Usuniecie konta nie powiodło się";
}
}
i mam taki problem, że usuwa mi się tylko użytkownik, a klient, dane i adres pozostają :/
$id_klienta, $id_danych, $id_adresu
zwracają prawidłowe wartości a i tak nie wiem o co chodzi. Mogę prosić o jakąś wskazówkę?