Diskuze: Předávání parametrů - nyní nefunguje :O
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Tvůrce
Zobrazeno 12 zpráv z 12.
//= 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.
v poli inzerat si pojmenovas klice pomoci promene, kterou jeste nemas definou a dle kodu tam ma byt asi pouze 'upresneni' a 'autor'
$inzerat = array(
'ID' => '',
'titulek' => '',
'text' => '',
'kategorie' => '',
$upresneni => '',
'mesto' => '',
$autor => '',
);
$inzerat = array(
'ID' => '',
'titulek' => '',
'text' => '',
'kategorie' => '',
'upresneni' => '',
'mesto' => '',
'autor' => '',
);
Takhle jsem to měl hned na začátku, jenže to nijak nepomáhá.. Už to mám pro jistotu změněný, ale pes bude asi zakopanej někde jinde :/
tak jedině zkontrolovat celé to pole $inzerat, kdyz mi neco nefunguje tak si vzdycky udelam
print_r($pozadovana_promena);
exit; // abych nemel v databazi pripadne x spatnych zaznamu
a takto si pomalinku projedu vsechno co to muze zpusobit.
Kdyz si to vlozis pred uloz_inzerat tak by sis mel poradit, s tim ze se ti klice v tom poli musi rovnat s nazvy sloupcu v dane tabulce
když si to vypíšu tak to skutečně v tom poli vůbec ty dva klíče ani nevypíše (autor, upresneni).. ale proč? :/
Zkus chvilku pátrat sám, ono takto se dost naučíš kde můžeš udělat chybu. Pokud na to nepřijdeš tak dej vědět, poradím jak dál
ted sem zkusil udělat toto:
$inzerat['autor']= $_SESSION['uzivatel']['jmeno'];
$inzerat['upresneni']=$_POST['upresneni_' . $_POST['kategorie']];
a v definici toho pole to nechat prázdné stejně jako ostatní položky.. ale stále se to tváří, že to pole vůběc neexistuje a tudíž ho nijak nepředává do databáze.. doufám že není chyba někde zde:
$klice = array('titulek', 'text', 'kategorie', 'upresneni', 'mesto', 'autor');
$inzerat = array_intersect_key($_POST, array_flip($klice));
// Uložení článku do DB
$spravceInzeratu->ulozInzerat($_POST['ID'], $inzerat);
to bych totiž asi úplně dobře nenašel :/
zkusím ještě pátrat..
jednak s tím polem inzerat nikde nepracujes, buď si ho přímo dopln posty z formu vcetne toho upresneni a autora
$inzerat = array(
'ID' => $_POST["ID"],
'titulek' => $_POST["titulek"],
'text' => $_POST["text"],
'kategorie' => $_POST["kategorie"],
'upresneni' => $_POST['upresneni_' . $_POST['kategorie']],
'mesto' => $_POST["mesto"],
'autor' => '$_SESSION['uzivatel']['jmeno']',
);
a dal pracuj s timto polem
if(empty($inzerat["titulek"])){
atd.
$inzerat = array_intersect_key($inzerat, array_flip($klice));
// Uložení článku do DB
$spravceInzeratu->ulozInzerat($_POST['ID'], $inzerat);
V druhém selectu máš name upresneni_audioVideo. Přejmenuj si to na jen upresneni.
Teda aspoň v tom minulém to tak bylo.
Promiň, nevšiml jsem si tam doplnění té kategorie. Takže tam chyba nebude ...
Super, díky Stačilo to dát do toho pole a už to ukládá všechno
Zobrazeno 12 zpráv z 12.