Autor Zpráva
Dawn
Profil *
Potrebuji skript, ktery by mel porovnavat dve indexova pole (teda snad to rikam dobre). Jedno je zjiskane pomoci fce file() a druhe z MySQL databaze.... skript je nasledujici:

//Čtení z databáze
$sql = "SELECT * FROM $tab"; //$tab je promenna s nazvem tabulky
$db_vysledek = mysql_query($sql,$pripojeni);

//porovnani
$i=0;
while ($i < $pocet_zaznamu_dat){ //$pocet_zaznamu_dat obsahuje cislo, ktere znaci pocet jmen v souboru
echo "pocet zaznamu dat (pro i = $i): ".$pocet_zaznamu_dat."<br>";
while ($radek = mysql_fetch_row($db_vysledek)){
echo HTMLSpecialChars($soubor_dat[$i])." l vs. l ".$radek[1]."<br>"; //jmena jsou ulozena v druhem sloupci tabulky, proto $radek[1]
}
$i++;
}

tento skript mi pak ale vypise:
pocet zaznamu dat (pro i = 0): 8
(ArGh)Spyder_CZ l vs. l (ArGh)Spyder_CZ
(ArGh)Spyder_CZ l vs. l <BD>{Rage}_cZ
(ArGh)Spyder_CZ l vs. l Suxness
(ArGh)Spyder_CZ l vs. l phoenix_cze
(ArGh)Spyder_CZ l vs. l LULA_3D
(ArGh)Spyder_CZ l vs. l duck_sk
(ArGh)Spyder_CZ l vs. l Atamasco
(ArGh)Spyder_CZ l vs. l Penttila
(ArGh)Spyder_CZ l vs. l (ArGh)Spyder_CZ
(ArGh)Spyder_CZ l vs. l <BD>{Rage}_cZ
(ArGh)Spyder_CZ l vs. l Suxness
(ArGh)Spyder_CZ l vs. l phoenix_cze
(ArGh)Spyder_CZ l vs. l LULA_3D
(ArGh)Spyder_CZ l vs. l duck_sk
(ArGh)Spyder_CZ l vs. l Atamasco
(ArGh)Spyder_CZ l vs. l Penttila
pocet zaznamu dat (pro i = 1): 8
pocet zaznamu dat (pro i = 2): 8
pocet zaznamu dat (pro i = 3): 8
pocet zaznamu dat (pro i = 4): 8
pocet zaznamu dat (pro i = 5): 8
pocet zaznamu dat (pro i = 6): 8
pocet zaznamu dat (pro i = 7): 8

tzn. ze vezme pouze prvni jmeno na seznamu v souboru a vypise ho postupne spolecne se jmeny z databaze. Ale to same pak jiz neprovede z dalsimi soubory ze souboru....

Jsem zacatecnik a tak prosim o radu. Urcite to je zase nejaka banalita, ale ja uz nad tim sedim strasne dlouho a nic se mi nedari... :-(
Vsem moc dekuji...
(michaldawn@seznam.cz)
MzM
Profil *
máš tam dva vnořené cykly, tak to nic jiného ani dělat nemůže
Moc jsem nepochopil to slovo "porovnat", zkus to blíž osvětlit.
Dawn
Profil *
aha... to je jedno. to slovo porovnat, na to se vyprdni. Jsem to uzpusobil tomu, abych to tu mohl nejak prezentovat. Ale dulezita je ta poznamka o vnorenych cyklech! Jaky je v tom problem? To se nesmi pouzivat dva vnorene cykli WHILE?
Jako ze se provede prikazy v prvnim, pak se vbehne do druheho, ten se zadannym poctem zopakuje, vrati se zpet do prvniho... A na nopvo, zase se provede prikazy v prvnim, pak se vbehne do druheho....

Pokud se teda pletu a nelze to takhle udelat, jak tedy? Potreboval bych (teda jednoduse receno) vypsat prvni polozku z jednoho indexovaneho pole tolikrat, kolik je polozek v druhem poli spolu s jeho daty. A to se provede postupne se vsemi daty v poli prvnim...:

Asi tak:
pole1-01 vs pole2-01
pole1-01 vs pole2-02
pole1-01 vs pole2-03
pole1-01 vs pole2-04
pole1-02 vs pole2-01
pole1-02 vs pole2-02
pole1-02 vs pole2-03
pole1-02 vs pole2-04
pole1-03 vs pole2-01
pole1-03 vs pole2-02
pole1-03 vs pole2-03
pole1-03 vs pole2-04
pole1-04 vs pole2-01
pole1-04 vs pole2-02
pole1-04 vs pole2-03
pole1-04 vs pole2-04
Dawn
Profil *
Jaký může nastat problém při vnořování dvou cyklů while? PLS poraďte....
Toto téma je uzamčeno. Odpověď nelze zaslat.