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
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 *
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
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 *
... 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
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 *
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
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

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: