PHP PDO Update - nefunguje

Gresus

PHP PDO Update - nefunguje
« kdy: 02. 05. 2016, 13:45:07 »
Dobry den.
Nefunguje mi update v PHP cez PDO. Nevyhadzuje mi to ziadnu chybu len nevykona UPDATE. Kde moze byt chyba ?

Kód: [Vybrat]
if(isset($_GET['id'])){
   
$ids = ($_GET['id']);
$title = ($_GET['title']);
$description = ($_GET['description']);
$user= ($_GET['url']);
$status = ($_GET['status']);


}


try {
   
$sql=$dbh->prepare("UPDATE `user` SET `title` = ? ,`user`=? `description` = ?, `status` = ? WHERE `user`.`id`=?;");
    $sql->execute(array(
    $title,
    $user,
    $description,
    $status,
   $ids
   ));


devnull

Re:PHP PDO Update - nefunguje
« Odpověď #1 kdy: 02. 05. 2016, 14:19:57 »
Jakou volas URL, jsi so jisty, ze id, ktery updatujes je v databazi?
Btw ten strednik v tom dotazu je zbytecnej ne? Nevim co s tim PDO dela, ale vadit by to nemelo ...

devnull

Re:PHP PDO Update - nefunguje
« Odpověď #2 kdy: 02. 05. 2016, 14:23:09 »
Jo a chybi ti carka pred description

Otakar

Re:PHP PDO Update - nefunguje
« Odpověď #3 kdy: 02. 05. 2016, 15:08:36 »
Hej ciarka bola chyba uz som to opravil ale stale to neupdatuje.
Ano ID je v DB.
Pred tym je kontrola na ID a zaznam v DB takze to je ok.

Kit

Re:PHP PDO Update - nefunguje
« Odpověď #4 kdy: 02. 05. 2016, 16:37:21 »
Máš tam logickou chybu: Pokud $_GET['id'] neexistuje, proměnné se nenaplní, ale UPDATE se provede. Bylo by možná lepší, kdyby tam ty pomocné proměnné vůbec nebyly:
Kód: [Vybrat]
<?php
if (isset($_GET['id'])) {
    try {
        
$sql "UPDATE `user` SET `title`=? ,`user`=?, `description`=?, `status`=? WHERE `id`=?;"
        
$update $dbh->prepare($sql);
        
$update->execute(array(
            
$_GET['title'],
            
$_GET['url'],
            
$_GET['description'],
            
$_GET['status'],
            
$_GET['id'],
        ));
    } catch ...