ďťż

[PHP] Usuwanie danych z bazy przy uzyciu PDO

       

Podstrony


telcocafe

Siema,

pisze prosty skrypt aby opanowac obsluge PDO w php. Doszedlem do etapu usuwania danych z bazy. Zrobilem skrypt ktory po przyslaniu (z innego pliku z formularzem) loginu i hasla uzytkownika, sprawdza czy sie zgadzaja, i jesli tak usuwa wpisy tego uzytkownika w innej tabeli. Wyglada to tak:

<?php require("../../config.php"); try { $pdo = new PDO('mysql:host='.DB_HOST.';dbname='.DB_TABL.';', DB_AUSER, DB_APASS); } catch(PDOException $e) { echo 'Połączenie z bd nie mogło zostać utworzone: ' . $e->getMessage(); } print('<?xml version="1.0" encoding="utf-8"?>'); ?> //duzo html'a <?php require("../admin/badm_funct.php"); if(isset($_POST['koles'])) { $dane=$pdo->prepare('SELECT id FROM ludzie WHERE login=:login AND haslo=:haslo'); $dane->bindValue(':login',$_POST['koles'],PDO::PARAM_STR); $dane->bindValue(':haslo',sha1($_POST['haslo']),PDO::PARAM_STR); $dane->execute(); $userid = $dane -> fetch(); $dane->closeCursor(); unset($dane); if($userid!=false) { $usun=$pdo->prepare('DELETE FROM smieci WHERE Ludzie_id=:id'); $usun->bindValue(':id',$userid,PDO::PARAM_STR); $ile=$usun->execute(); unset($usun); if($ile>0) { print("<br />Usunieto $ile rekordow dla konta: ".$_POST['koles']."<br /><br />"); } else { print("Nie usunieto zadnego rekordu"); } } else { print("<br />Nieprawidłowe dane użytkownika.<br /><br />"); } } else { print("<br />Brak danych.<br /><br />"); } ?>

Problem polega na tym, ze podaje dane usera, skrypt sie wykonuje, wyswietla przykladowo "Usunieto 2 rekordow dla konta: zenek", ale rekordy w bazie jak były tak w dalszym ciągu są, nie są usuwane.

Nie wiem o co chodzi, skrypt "mowi" ze usunal, a dane caly czas sa w bazie. Uzytkownik ma prawa do usuwania rekordow w bazie.

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.