PDO Datensatz löschen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • PDO Datensatz löschen

    ich habe eine PDO Klasse zum löschen gewählter Datensätze nur erhalte ich ständig ein einfaches Error. error_reporting gibt auch nichts aus


    PHP-Code:
    $pdo = new PDO('mysql:host=...;dbname=...''...''...');
        
    $sth =$pdo->prepare('DELETE FROM test WHERE siteid=:id');
        
    $sth->bindValue(':id'$siteidPDO::PARAM_INT);
        
    $sth->execute();
        
    $count $sth->rowCount();
        if(
    $count>0)
        {
            
    header('location:url.inc.php');
        }else{
            echo 
    "Error in delete";
        } 
    das ist mein löschlink:
    PHP-Code:
    <a href=url_del.php?id=".$row->siteid."><img src=images/loschen.png border=/></a

    hat jemand ne Idee was ich da falsch mache?



    Danke im vorraus

  • #2
    Was ist ein "einfaches Error"? Was ergibt das Debugging?

    Kommentar


    • #3
      PDO Datensatz löschen

      Ja mit dem Debugging komme ich irgendwie nicht klar



      leider


      Nachfolgende Funktion klappt. Löscht aber nur den ersten Datensatz

      PHP-Code:
      $pdo = new PDO('mysql:host=localhost;dbname=test''username''password'); $statement $pdo->prepare("DELETE FROM users WHERE id = ?");$statement->execute(array(1)); 
      Zuletzt geändert von phppower; 10.02.2022, 11:14. Grund: Informationen vergessen

      Kommentar


      • #4
        Bei Problemen mit Datenbankabfragen bitte auch Tabellenstruktur und Beispieldaten als SQL-Code mitliefern, damit das Problem nachgestellt werden kann.

        Kommentar


        • #5
          PDO Datensatz löschen

          Zitat von h3ll Beitrag anzeigen
          Bei Problemen mit Datenbankabfragen bitte auch Tabellenstruktur und Beispieldaten als SQL-Code mitliefern, damit das Problem nachgestellt werden kann.

          die Abfrage sieht in etwa so aus
          PHP-Code:
          $sql "SELECT siteid, url FROM `phplinX_katalog_seiten`"
          PHP-Code:
          echo ".$row->siteid.";
          echo
          "<a href=".$row->url." target=_blank>".$row->url."</a>";
          echo
          "<a href=url_del.php?siteid=".$row->siteid."><img src=images/loschen.png border=0 /></a>"

          die Tabellenstruktur sieht so aus, wobei ich für den einen Prozess nur die ID und Url benötige



          PHP-Code:
          CREATE TABLE IF NOT EXISTS `phplinX_katalog_seiten` (
            `
          siteidint(10NOT NULL auto_increment,
            `
          rubrikvarchar(45NOT NULL default '',
            `
          unterrubrikvarchar(45NOT NULL default '',
            `
          namevarchar(50NOT NULL default '',
            `
          mailvarchar(100NOT NULL default '',
            `
          urlvarchar(100NOT NULL default '',
            `
          beschreibungtext NOT NULL,
            `
          keywordsvarchar(120NOT NULL default '',
            `
          codeint(2NOT NULL,
            `
          userbfloat(3,2NOT NULL default '0.00',
            `
          adminbvarchar(100NOT NULL default '',
            `
          besucherint(10NOT NULL,
            `
          nummervarchar(15NOT NULL default '',
            `
          passvarchar(32NOT NULL default '',
            `
          bzahlvarchar(10NOT NULL default '',
            `
          bwertvarchar(10NOT NULL default '',
            `
          hitinint(10NOT NULL,
            `
          commerzvarchar(8NOT NULL default '',
            `
          backlinkvarchar(8NOT NULL default '',
            `
          languagevarchar(10NOT NULL default '',
            `
          datumvarchar(10NOT NULL default '',
            `
          artikelvarchar(32NOT NULL default '',
            `
          anderncodeint(2NOT NULL,
            `
          lnwenum('Ja','Nein'NOT NULL default 'Ja',
            `
          absendervarchar(64NOT NULL default '',
            
          PRIMARY KEY  (`siteid`)
          ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3705 

          hoffe das ist das was gewünscht ist

          Kommentar


          • #6
            Und jetzt noch bitte Beispieldaten als SQL-Code.

            Du möchtest übrigens keine Löschaktionen per <a> Element ausführen. Da braucht nur mal ein voreiliger Proxy, Virenscanner oder Browser-Precache drüber stolpern und schon sind alle deine Datensätze gelöscht.

            Per $_GET sollten gar keine Schreib- oder Löschoperationen gemacht werden. Dafür immer $_POST verwenden.

            Kommentar


            • #7
              Zitat von h3ll Beitrag anzeigen
              Und jetzt noch bitte Beispieldaten als SQL-Code.

              Du möchtest übrigens keine Löschaktionen per <a> Element ausführen. Da braucht nur mal ein voreiliger Proxy, Virenscanner oder Browser-Precache drüber stolpern und schon sind alle deine Datensätze gelöscht.

              Per $_GET sollten gar keine Schreib- oder Löschoperationen gemacht werden. Dafür immer $_POST verwenden.

              PHP-Code:
              INSERT INTO `phplinX_katalog_seiten` (`siteid`, `rubrik`, `unterrubrik`, `name`, `mail`, `url`, `beschreibung`, `keywords`, `code`, `userb`, `adminb`, `besucher`, `nummer`, `pass`, `bzahl`, `bwert`, `hitin`, `commerz`, `backlink`, `language`, `datum`, `artikel`, `anderncode`, `lnw`, `absender`) VALUES
              (2'Shoppen-und-Schnaeppchen''Schopping-Portale''Naturmittel Shop''info@fs-bachblueten.de''http://www.fs-mineralstoffe.de''In unserem Online Shop finden Sie unter anderem Sch&uuml;sslersalz, Nahrungserg&auml;nzung und viele weitere Mineralstoffe.''mineralstoffe schuesslersalz naturmittel'10.00''140'ySI3Xt2611''7f990025b173bf2b61e1698e1d23e73f''0''0'0'nein''nein''de''26.11.2009''Online-Shop'0'''netz'),

              Kommentar

              Lädt...
              X