Autor | Zpráva | ||
---|---|---|---|
Maximus Profil * |
Ahoj, potreboval bych poradit, jak dostat z pole promennych jednotlive promenne..
KOD for ($i = 1; $i < 11; $i++): if($_POST['checkbox'.$i] == "ano"): $vyber[$i] = array($_POST['t_jmeno'.$i], $_POST['t_prijmeni'.$i], $_POST['t_vek'.$i], $_POST['t_pohlavi'.$i], $_POST['t_adresa'.$i]); endif; endfor; foreach ($vyber as $a) { foreach ($a as $b) {echo $b." | ";} echo "<br>"; } vypise to Jan | Novak | 20 | muz | Brno | Petr| Zach | 29 | muz | Brno | ... ale ja potrebuju poradit, jak mam udelat, aby se mi z toho pole ulozili hodnoty do promennych $jmeno1 = ? (chci aby tam bylo Jan) $prijmeni1 = ? (chci aby tam bylo Novak) $vek1 = ? (chci aby tam bylo 20) $pohlavi1 = ? (chci aby tam bylo muz) $adresa1 = ? (chci aby tam bylo Brno) $jmeno2 = ? (chci aby tam bylo Petr) $prijmeni2 = ? (chci aby tam bylo Zach) $vek2 = ? (chci aby tam bylo 29) $pohlavi2 = ? (chci aby tam bylo muz) $adresa2 = ? (chci aby tam bylo Brno) |
||
AM_ Profil |
#2 · Zasláno: 17. 4. 2009, 18:17:35
PHP podporuje dynamické názvy proměnných, takže:
$nazev_promenne = 'jmeno1'; $$nazev_promenne = 'Jan'; echo $jmeno1; //vypise Jan Sice to funguje, ale asociativní pole jsou dobrá věc, pokud nemáš skutečně dobrý důvod používat tohle, držel bych se polí. Příklad výhody je právě to, že pole můžeš projít pomocí foreach, ale změť proměnných těžko. |
||
Maximus Profil * |
#3 · Zasláno: 17. 4. 2009, 18:32:32
AM_
... popravde tvemu vysvetleni moc nerozumim, ale to bude tim, ze neromim moc ani PHP. Nejde mi ani tak o vypsani (echo), ale ja ty hodnoty prave potrebuju dostat do promennych, abych to potom mohl vlozit do databaze. Takze kdyz mi php soubor schrousta data z formulare pres tento zdrojak for ($i = 1; $i < 11; $i++): if($_POST['checkbox'.$i] == "ano"): $vyber[$i] = array($_POST['t_jmeno'.$i], $_POST['t_prijmeni'.$i], $_POST['t_vek'.$i], $_POST['t_pohlavi'.$i], $_POST['t_adresa'.$i]); endif; endfor; ... to uz jsem overil, ze funguje pres to foreach ($vyber as $a) { foreach ($a as $b) {echo $b." | ";} echo "<br>"; } .... a me jde prave o to prirazeni tech hodnot do promennych, a ty potom budu davat do databaze... Radeji mi to napiste jak pro uplnyho bambulu (tim totiz v PHP asi jeste nejakou dobu budu) Dekuju |
||
AM_ Profil |
#4 · Zasláno: 17. 4. 2009, 18:44:22
Ok, na to co jsem psal zapomeň a na dostávání hodnot do proměnných taky. Dělá se to nějak takhle:
for ($i = 1; $i < 11; $i++): if($_POST['checkbox'.$i] == "ano"): $vyber[$i] = array($_POST['t_jmeno'.$i], $_POST['t_prijmeni'.$i], $_POST['t_vek'.$i], $_POST['t_pohlavi'.$i], $_POST['t_adresa'.$i]); $to_sql = "'".implode("', '", $vyber[$i])."'"; //slouci pole do dotazu 'polozka1', 'polozka2'... mysql_query("INSERT INTO tabulka (jmeno, prijmeni, vek, pohlavi, adresa) VALUES ($to_sql)"); //ulozi data endif; endfor; |
||
Maximus Profil * |
#5 · Zasláno: 17. 4. 2009, 19:42:08
... a nevlozi mi to to takhle do te tabulky do 2 rows ?(kdyz napriklad v predchazejicm formulari zakliknu 2 veci)
Ja prave potrebuju, aby se se mi to ulozilo to sloupcu count jmeno1 prijmeni1 vek1 pohlavi1 adresa1 jmeno2 prijmeni2 vek2 pohlavi2 adresa2 soucet ... struktura te tabulky je count jmeno1 prijmeni1 vek1 pohlavi1 adresa1 jmeno2 prijmeni2 vek2 pohlavi2 adresa2 jmeno3 prijmeni3 vek3 pohlavi3 adresa3 soucet ... z cehoz prameni, ze to potrebuju ulozit do jedne ROW v te tabulce, kam se to ma zapisovat |
||
AM_ Profil |
#6 · Zasláno: 17. 4. 2009, 20:15:34
Návrh tabulky je otřesný ne-li příšerný. Takovýhle záznam skutečně patří do tří řádků. Rozepisovat se tu s neefektivním skriptem na takovou hloupost nebudu.
|
||
Maximus Profil * |
#7 · Zasláno: 17. 4. 2009, 20:46:21
AM_
Dobre... ja tu tabulku muzu predelat... ale snazim se neco udelat, a na tomdle to zkousim... ... jde o to, ze mam 1 tabulku, ve ktere mam ulozene tyto udaje DATUM, ZAPAS, TIP, KURZ, STAV ... a ja si chci do druhe tabulky ulozit nove udaje tak, abych z toho mohl sestavit tiket.... tzn. ze z te prvni tabulky natahnu zaznamy, ktere jeste nejsou vyhodnoceny (to umim, stav = NULL)... natahnu si je do formulare a za kazdy radek dam checkbox, takze si potom zasrtnu ty, ktere chci ulozit do druhe tabulky, respektive z nich sestavit tiket (budu si moc vybrat 1 - 3 zapasy). A ja tam potrebuju ty data (konkretne ze sloupcu DATUM, ZAPAS, TIP, KURZ) z prvni tabulky (to jsem chtel vyresit tim datum1, zapas1, ... az kurz3 a do stejne row jeste ulozim VSAZENA CASTKA a CELKOVY KURZ) Jakou tedy navrhujes logiku? Asi jsem to vazne navrhul uplne blbe, ale jestli te neco napada... ja uz se s tim morim nekolik dni a nevim jak na to :( |
||
AM_ Profil |
#8 · Zasláno: 17. 4. 2009, 22:35:41
Propojování tabulek pomocí unikátních klíčů. Přiznám se, že to, co popisuješ, moc nechápu, ale pokud se něco opakuje, zkus třeba
Sazky: ID | VSAZENA CASTKA | CELKOVY KURZ | Sazky_zapasy: ID | ID_SAZKY | DATUM | ZAPAS | TIP | KURZ |
||
Časová prodleva: 15 let
|
0