citanje iz txt fajla po linijama

citanje iz txt fajla po linijama

offline
  • Pridružio: 01 Jan 2010
  • Poruke: 75
  • Gde živiš: Beograd

znaci zelim da se sad korisnik registruje, php kreira fajl i upise sve sto treba, e onda kada se on loguje, treba mi da proveri recimo password koji se nalazi u drugom redu? pre sam video negde da se stavi nesto:
$fajl = 'user.txt';
$samosifra = $fajl[2];
ali nece :S jel zna neko kako ispravno ide?



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 15 Maj 2006
  • Poruke: 333
  • Gde živiš: Babušnica

<?php $file = fopen("welcome.txt", "r") or exit("Unable to open file!"); //Output a line of the file until the end is reached while(!feof($file))   {   echo fgets($file). "<br />";   } fclose($file); ?>
http://www.w3schools.com/PHP/php_file.asp

Ubaciš u petlju neki brojač koji ima početnu vrednost 1 i onda ispituješ. Ako je 2 (drugi red) neka promenljiva $drugi_red = $fgets($file).



offline
  • Pridružio: 01 Jan 2010
  • Poruke: 75
  • Gde živiš: Beograd

ne razumem gde tu obelezava da je drugi red?
ja ocu da je uvek drugi red.. voleo bih kad bi neko znao onaj nacin sto sam ja anveo sam kako ide ispravno

offline
  • Pridružio: 15 Maj 2006
  • Poruke: 333
  • Gde živiš: Babušnica

Ne obeležava nigde. Samo sam ti naveo primer kako čitati red po red. Evo ti moj primer koji obeležava redove pa probaj sam nešto tu...

<?php $imefajla = 'sifre.txt'; $file = fopen($imefajla, "r") or exit("Greska!"); $brojac=1; while(!feof($file)) {    $linija = fgets($file);    echo $brojac.'. '.$linija.'<br/>';    $brojac++; } fclose($file); ?>

offline
  • Pridružio: 01 Jan 2010
  • Poruke: 75
  • Gde živiš: Beograd

ma hvala al meni treba iskljucivo da cita odredjeni red

offline
  • Pridružio: 21 Apr 2007
  • Poruke: 98

Pa već imaš taj kod u postu iznad.

<?php function readLine($file, $line_num, $delimiter="\n") {     $i = 1;     $fp = fopen( $file, 'r' );     while ( !feof ( $fp) )     {         $buffer = fgets($fp);         if( $i == $line_num )         {             return $buffer;         }         $i++;         $buffer = '';     }     return false; } ?>

Korišćenje:
echo readLine("sifre.txt", 2);

readline(ARG1, ARG2)

ARG1 - fajl/putanja do fajla
ARG2 - Linija koju treba čitati

offline
  • Pridružio: 01 Jan 2010
  • Poruke: 75
  • Gde živiš: Beograd

Napisano: 16 Feb 2011 22:32

<?php
$im = $_POST['ime'];
$ime = $im . '.txt';
$email = $_POST['email'];
$pass = $_POST['pass'];
$stih = $_POST['stih'];
$nr = "<br>";
$data = $pass . $nr . $email . $nr . $stih;
$ile = "ad/$ime";
$otv = fopen($file, 'w');
fwrite($otv, $data);
fclose($otv);
function readLine($file, $line_num, $delimiter="\n")
{
$i = 1;
$fp = fopen( $file, 'r' );
while ( !feof ( $fp) )
{
$buffer = fgets($fp);
if( $i == $line_num )
{
return $buffer;
}
$i++;
$buffer = '';
}
}
echo readLine("$file", 2)
?>

i izbaci mi milion i tri greske.

Dopuna: 16 Feb 2011 22:34

maaa ne znam ja php odustajem sorry na cimanju

offline
  • Pridružio: 21 Apr 2007
  • Poruke: 98

-Nigde nisi definisao $file
-Ovo $nr = "<br>";
Treba da bude
$nr = "\n";

<html> <head>   <body> <?php   //FUNKCIJE   function snimi($fajl,$podaci) {   $snimi = fopen($fajl, 'w');   fwrite($snimi, $podaci);   fclose($snimi);   if ( $snimi AND file_exists($fajl) ) return true;   else return false;   }     function readLine($file, $line_num) {     $i = 1;     $fp = fopen( $file, 'r' );     while ( !feof ( $fp) )     {         $buffer = fgets($fp);         if( $i == $line_num )         {             return $buffer;         }         $i++;         $buffer = '';     }     return false; } ?>  <?php if ($_SERVER['REQUEST_METHOD'] != 'POST') {?> <form name='forma' method='post' action=''>   <div>Ime:     <input name="ime" type="text"></div>   <div>Email:   <input name="email" type="text"></div>   <div>Lozinka: <input name="pass" type="password"></div>   <div>Stih:    <input name="stih" type="text"></div>   <div><input name="submit" type='submit' value='Prijava' /></div> </form>    <?php } else {    $podaci = $_POST["ime"]."\n".$_POST["email"]."\n".$_POST["pass"]."\n".$_POST["stih"];    $fajl = $_POST["ime"].".txt";        $rezultat = snimi($fajl, $podaci);    if ($rezultat) echo "Podaci su snimljeni u ".$fajl;        echo "<br /><br />Podaci iz <strong>".$fajl."</strong>:<br />";    echo "<br /><strong>1 red (Ime):</strong> ".readLine($fajl, 1);    echo "<br /><strong>2 red (Email):</strong> ".readLine($fajl, 2);    echo "<br /><strong>3 red (Lozinka):</strong> ".readLine($fajl, 3);    echo "<br /><strong>4 red (Stih):</strong> ".readLine($fajl, 4);    }?> </body> </html>

Note: Nigde se ne vrsi provera za unose (duzina, validnost itd).

Ko je trenutno na forumu
 

Ukupno su 656 korisnika na forumu :: 42 registrovanih, 4 sakrivenih i 610 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3028 - dana 22 Nov 2019 07:47

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: _commandos_, _Sale, A.R.Chafee.Jr., aramis s, Bahuss, Bane san, BRATORIII, Cirkon, CrazyDiablo, Doc, Doca, draganozinic64, Dusko Nikolin, Georgius, GreenMan, JOntra, Jovan Nenad, KlinkaPalacinka, manda87, Marko Marković, Markoni29, mačković, miodrag2, Mr. Majevica, MrNo, mustangkg, Neretva, ostoja, Panter, proka89, repac, sabros, sakota79, Skijavoneska, Srki94, stegonosa, trajkoni018, VJ, Vlada1389, VladaKG1980, VP3987, zlaya011