Autor Zpráva
FireFox
Profil *
Ahoj,
Do tabulky vypisuji z databáze fotky, pod každou fotkou je textový input, kam má uživatel napsat popisek.
Když upraví popisky všude, klikne na Uložit změny a popisky by se měli přidat k fotkám v databázi. Každá fotka má svůj řádek v db.

Uvědomuju si, že od sebe musím inputy odlišit a to dělám pomocí name="fotka'.$z['id'].'" - říkal jsem si, že to id bude určitě púotřeba i při zpracování a uložení do db, ale nějak jsem narazil, když jsem se pokoušel právě o to ukládání...

Nevíte prosím někdo jak na to, mě napadjí jen šílonosti jako třeba uložit název porměné do jiné proměné a podle toho pak určovat k jaké fotce patří jaký popisek. Nicméně mi to nepříjde jako zrovna elegantní řešení a navíc jsem nenašel jak uložit název proméné do ji né proměné jako text.

Díky moc za rady ;)
PostCC
Profil
Ty proměnné se klidně mohou jmenovat např.:

name="fotka[".$z["id"]."]"

což do PHP následně přijde jako pole. Index prvku je pak současně identifikátorem položky.
Taps
Profil
FireFox:
UPDATE jedné tabulky, společně víc řádků najednou - nejde
FireFox
Profil *
Tak už to skoro mám ... ale
netuším proč, ale tenhle kod:
foreach ($_POST['popisek'] as $id => $zaznam){
  $v=sql("UPDATE  `galerie_fotky` SET `popisek`= '".$zaznam['popisek']."' WHERE `id` = ".$id);
}
mi do databáze uloží vždy jen první písmeno z řetězce, který napíšu do inputu:
<input type='text' name='popisek[".$z['id']."]' value='".$z['popisek']."' size='30'>

Když napíšu echo $_POST['popisek']['1']; tak mi to ten text vypíše celý.

Nejspíš to bude nějaká blbost, ale já to tam prostě nevidím .. :/

Díky
Alphard
Profil
Ten klíč popisek u proměnné $zaznam je už přebytečný (je ve foreach). Zkuste jen $zaznam.
FireFox
Profil *
Jé, já jsem vůl, přehlídnul jsem to... :D
dík moc všem, fungoje to :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: