ďťż
Podstrony
|
telcocafe<?php $zmienna = $_GET['zmienna']; $wynik = 'blad'; $uchwyt = @fopen("plik.txt", "r"); if ($uchwyt) { do { $bufor = fgets($uchwyt, 4096); if ($bufor == $zmienna) { break; $wynik = 'ok'; } } while (!feof($uchwyt)); fclose($uchwyt); } echo $wynik; ?>Chodzi o to zeby skrypt wczytywał kolejne linie z pliku do zmiennej $bufor i sprawdzał czy jest ona taka sama jak zmienna $zmienna, az do końca pliku. Jeśli zmienne okażą się takie same to powinien przerwac wykonywanie pętli i wyświetlic 'ok', jesli nie to 'blad'. Problem w tym, ze czego bym nie podał, zawsze dostaje 'blad' <_< Nie możesz wykonywać takiego porównania if ($bufor == $zmienna) Bo terez zmienna $bufor jest wskaźnikiem na pierwszy element tablicy i nie możesz jej porównywać do innej zmiennej. Użyj strcmp: if (strcmp($bufor,$zmienna)==0) Oczywiście $zmienna jest zmienną tekstową <_< . Użytkownik krajew4 edytował ten post 08 lipiec 2006, 07:22 <?php $zmienna = $_GET['zmienna']; $wynik = 'zle'; $uchwyt = @fopen("ffa.kaboom", "r"); if ($uchwyt) { do { $bufor = fgets($uchwyt, 4096); if (strcmp($bufor,$zmienna)==0) { break; $wynik = 'ok'; } } while (!feof($uchwyt)); fclose($uchwyt); } echo $wynik; ?> Dlaczego teraz po przekazaniu do skryptu poprawnego ciągu, zmienna $wynik nie zawiera 'ok' tylko zawsze jest 'zle' ? if (strcmp($bufor,$zmienna)==0) { break; $wynik = 'ok'; } powinno być if (strcmp($bufor,$zmienna)==0) { $wynik = 'ok'; break; } :P :P Dalej to samo :Jumpy: Podaje dobrą wartość - 'zle', podaje złą - 'zle' <_<. To jest tak jak w delphi ze ta pętelka gdy będzie true to nadpisze starą wartość $wynik, która jest ustawiona od początku na 'zle' ? Użytkownik Private edytował ten post 08 lipiec 2006, 09:32 U mnie taki kod działa: <?php $zmienna = $_GET['zmienna']; $wynik = 'blad'; $uchwyt = @fopen("plik.txt", "r"); if ($uchwyt) { do { $bufor = fgets($uchwyt, 4096); echo $bufor; if (strcmp($bufor,$zmienna)==0) { $wynik = 'ok'; break; } } while (!feof($uchwyt)); fclose($uchwyt); } echo $wynik; ?> W pliku plik.txt mam zapisane: skrypt A wywołuję skrypt tak: http://127.0.0.1/~cr...?zmienna=skrypt i dostaję ok :) :) Użytkownik krajew4 edytował ten post 08 lipiec 2006, 10:15 OK, problem rozwiązany na innym forum :) OK, problem rozwiązany na innym forum :) Daj ten kod, co żeś go na innym forum dostał. no chapaj zawartość przez file_get_contents 1. szybsze 2. sprawniejsze 3. mniejsze objętościowo 4. dżezi :> |
|||
Sitedesign by AltusUmbrae. |