Diskuze: update DB nerozumim si s DB wraperem
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 6 zpráv z 6.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Máš tady chybu jasně ti to píše
array('zetony=zetony+' => "$sazka")
Nebyl nalezen sloupeček se jménem zetony=zetony+
Jelikož ty takhle ukládáš tu hodnotu do "zetony=zetony+" a ne do
"zetony"...
Jsou dvě možnosti jak to opravit...
Možnost
db::update('UPDATE sazky SET zetony=zetony + :zetony', array(':zetony', $zetony_bunka));
Bohužel nevidím celý kód jak to ukládáš do databáze, takže se nemůžu podle toho odrazit, ale něco na ten způsob bych udělal
Takže operátor = mi tu převede na výraz, který nemá funkci ? Budu asi muset vytvořit novou funkci v db wraperu co ?
Nejspíš ano, jelikož ty ukladáš tu proměnnou z PHPčka do kolonky zvanou "zetony=zetony+", ale ty to chceš uložit do "zetony"
vyřešeno tímto scriptem
$sazka1[0]=$sazka;
$sazka1[1]=$_SESSION['uzivatel']['uzivatele_id'];
db::dotaz("UPDATE sazky
SET zetony = zetony + ?
WHERE id_uzivatele = ?", $sazka1);
DB wraper
public static function dotaz($dotaz, $parametry = array()) {
$navrat = self::$spojeni->prepare($dotaz);
$navrat->execute($parametry);
return $navrat->rowCount();
}
Děkuji za správné nasměrování.
Zobrazeno 6 zpráv z 6.