/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Tjek om det er der i forvejen
Fra : Ukendt


Dato : 24-08-06 15:00

Hej
Her er min kode:
-------------------------
$fil = fopen("test.txt", "a");
fwrite($fil, "$navn - \n");
fclose($fil);
-------------------------
men hvordan kan jeg tjek at ( $navn )
ikke står i ( test.txt )
i forvejen ?



 
 
Jesper H (24-08-2006)
Kommentar
Fra : Jesper H


Dato : 24-08-06 15:33


Buffy (snabel-a) skrev:

> Hej
> Her er min kode:
> -------------------------
> $fil = fopen("test.txt", "a");
> fwrite($fil, "$navn - \n");
> fclose($fil);
> -------------------------
> men hvordan kan jeg tjek at ( $navn )
> ikke står i ( test.txt )
> i forvejen ?

Hej Buffy

Du er nok nødt til at åbne filen først og kigge igennem den. Når du
bruger "a" i fopen() åbner du nemlig kun filen til skrivning i
slutningen af den. Hvis du kigger på
http://dk.php.net/manual/da/function.fopen.php
kan du se, at du evt. kan åbne den med 'r+', som åbner filen til
læsning og skrivning, og sætter fil-pointeren i starten af filen. Så
læser du ned gennem filen og undersøger om $navn allerede står der
(f.eks. vha. strstr() eller stristr() ). Hvis ikke, er filpointeren jo
i slutningen af filen, og du kan skrive $navn ind her.

Det skal siges at jeg ikke lige har prøvet det efter

Mvh
Jesper
--
http://www.tandklinikken-vesterbro.dk/


Ukendt (24-08-2006)
Kommentar
Fra : Ukendt


Dato : 24-08-06 17:54

Jeg prøver lige at åbne den

$handle = fopen("test.txt", "r");
echo $handle;

men så skrive den ( Resource id #1 )

hvordan får jeg så ( test.txt ) ind i ( $handle ) ?




Jesper H (24-08-2006)
Kommentar
Fra : Jesper H


Dato : 24-08-06 18:19


Buffy (snabel-a) skrev:

> Jeg prøver lige at åbne den
>
> $handle = fopen("test.txt", "r");
> echo $handle;
>
> men så skrive den ( Resource id #1 )
>
> hvordan får jeg så ( test.txt ) ind i ( $handle ) ?

Hej Buffy

Det er fordi $handle kun er et såkaldt handle (håndtag) til filen,
men ikke selve filens indhold. Det er ligesom det handle, du bruger
når du siger $fil = fopen($filnavn, 'a') og efterfølgende frwite($fil
.... osv. For at læse filens indhold skal du altså bruge en funktion
til at læse filen med, når den er åbnet. Denne funktion kunne være
fread(). Prøv at kigge de eksempler, som står her:
http://dk.php.net/manual/da/function.fread.php

Mvh
Jesper
--
http://www.tandklinikken-vesterbro.dk/ , http://fdf.dk/landsdel1/


Ukendt (24-08-2006)
Kommentar
Fra : Ukendt


Dato : 24-08-06 18:30

Nu fik jeg ( test.txt ) ind i ( $str )

$str=file_get_contents("test.txt");
echo $str;

hvordan for jeg den så til at tjek om navnet ( $navn ) er i listen ?




Martin Larsen (24-08-2006)
Kommentar
Fra : Martin Larsen


Dato : 24-08-06 19:12

Buffy wrote:
>
> hvordan for jeg den så til at tjek om navnet ( $navn ) er i listen ?

if(strpos($str, $navn)!==false) echo "strengen er der i forvejen";

Men værk opmærksom på at hvis $str = "morgenbrød" og du søger efter
"rød", så får du et positivt svar. Søger du efter hele ord, er det lidt
mere omstændigt. Så er det nemmest med regulære udtryk, regex.

Martin





Ukendt (24-08-2006)
Kommentar
Fra : Ukendt


Dato : 24-08-06 19:24

har lavet den nu og den se ud til at køre : )

$Tjeknavn = "$navn - \n";
$str=file_get_contents("data/$nr.txt");
if(stristr($str, $Tjeknavn) === FALSE) {
$fil = fopen("data/$nr.txt", "a");
fwrite($fil, "$navn - \n");
fclose($fil);
}

se den ok ud ?
skal der mere ( fclose ) til ?



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste