Autor | Zpráva | ||
---|---|---|---|
Fellipe Profil * |
#1 · Zasláno: 20. 4. 2009, 12:41:49
$soubor = File("OL.txt");
$pocet = Count($soubor); if ($_GET["b"]!="") for ($i = 0; $i < $pocet; $i++) { $date = explode (";", $soubor[$i]); if($_GET["b"]==$date[1]) { echo "V roce " .$_GET["b"]. " se konaly ".$date[0]." v ". $date[3]." a to v městě ". $date[4]."."; }else echo "V tomto roce se LOH nekonaly";} Princiop jednoduchy.Mám txt soubor v něm data v pořadí LOH;1896;6. duben - 15. duben;Řecko;Atény a chci,když zadám rok,aby mi to vypsalo že v roce $b se konaly LOH tam atam.To mi jde,ale už mi nefunguje to,že když zadám rok,ve kterém se OH nekonaly,tak mi to vypíše X*hlášku že se nekonaly,v závislosti na počtu řádků v textaku.A další chyba že když zadám správný rok,tak mi to vypíše X*že se nekonaly,až to dojde k roku kdy se konaly tak to vypíše co chci,no a pak dále vypisuje že se nekonaly,dokud nedojede do konce textaku.Chyba bude asi někde v závorkách,ale už jsem vykoušel snad vše.Pls poraďte někdo |
||
tiso Profil |
#2 · Zasláno: 20. 4. 2009, 13:18:10
Fellipe - chyba je v logike že to nefunguje ako chceš...
|
||
Joker Profil |
#3 · Zasláno: 20. 4. 2009, 13:22:06
Fellipe
Udělal bych to jinak, když budu vycházet z toho, že v každém roce se konaly nejvýše jedny LOH: $soubor = fopen("OL.txt","r"); $nalezeno = false; while(!$nalezeno && !feof($soubor)) { $data = explode(";", fgets($soubor)); if($_GET["b"] == $data[1]) $nalezeno = true; } if($nalezeno) echo("V roce ".$data[1]." se konaly ".$data[0]." ve státě: ".$data[3].", město: ".$data[4]); else echo("V tomto roce se LOH nekonaly"); |
||
Časová prodleva: 15 let
|
0