Diskuze: php
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
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.
Teď k věci. U Opravneni
máš otazník, což je správně, ale
poté už vůbec nechápu, proč do WHERE dáváš napřímo ten
parametr. Navíc do Opravneni
dosazuješ nějaké číslo a přitom
tam házíš nick uživatele.
A nakonec nechápu, kde bys měl brát to oprávnění a proč v té tabulce je
tolik hidden inputů.
Být tebou zamyslel bych se nad předěláním toho kódu, protože ani já sám
nevím, co chceš upravovat u oprávnění, které nikde nemáš, a k tomu
důvody výše.
ehm, ano omylem jsem tam házel ten nick, ale měl tam být $_POST["2"], což
je vlastně zbytečné a mohl jsem tam házet rovnou hodnotu "2", ale i tak to
vyhazuje false.
Chybová hláška je: Fatal error: Uncaught Error: Call to a member function
bind_param() on boolean in C:\xampp\php\www\maturitniprace\zadost.php:22
Stack trace: #0 {main} thrown in C:\xampp\php\www\maturitniprace\zadost.php
on line 22.
Každopádně i tak nechápu význam tohoto skriptu. Ale abych jen nehejtoval, protože nevím, k čemu to máš, řešení by mohlo vypadat asi nějak takto:
$dotaz = $pripojeni->prepare("UPDATE `uzivatel` SET `Opravneni` = ? WHERE `Nick` = ?");
$dotaz->bind_param("is", $_POST["2"], $_POST["nick"]);
bind_param()
nahradí dané "otazníčky" (tj. parametry k
doplnění) s danými datovými typy. To jest integer
(-
oprávnění) a string
(- nick).
Ok děkuju, takhle se zdá, že to funguje, mimochodem funkce tohoto scriptu je jakože schválení uživatelských přáv, s tím že pokud se někdo zaregistruje a požaduje vyšší práva, tak se mu do jeho účtu v databázi zapíše 1, což je basic úroveň a jeho nick se zapíše do tabulky žádostí, která je vypisovaná tím scriptem výše, tento update potom tedy to opravnění setne na 2.
Není zač. Pokud ti moje řešení pomohlo, označ ho prosím jako řešení
(ta fajfka u příspěvku).
A pro příště nezapomeň dát Odpovědět u příspěvku, aby mi
přišla notifikace a zároveň aby ostatní viděli, na co jsi odpovídal.
Zobrazeno 6 zpráv z 6.