Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
29.09.2001, 19:25
Grim_Reaper



Also ich bin zwar noch nicht so weit in php, aber dachte mir ein Newssytem geht vielleicht schon. Hat soweit auch geklappt, aber das erste Porb war, das der neue Newseintrag dann immer unten Stand.

Dann hab ich mir gedacht, ich nehm den Schreibmodus "w+" und lass dann zuerst den neuen Post und dann die alten reinschreiben, dann würde der neue Post ganz oben stehen.

Dann hab ich angefangen ein script zu basteln.
Ich dachte mir, ich weiss den Inhalt der datei, wo ich meine News drin hab, einer Variablen zu:

Quellcode:
<?
$datei= fopen("news.php3", r);
while (!feof($datei)) {

                $oldnews = fgets($datei,10000);

}
echo $oldnews;

?>

Wie schaff ich es jetzt, dass die Variable "oldnews" nach dem } noch sichtbar ist. Ich dachte mir vielleicht mit global, aber das hat auch nicht funktioniert.
Ich will die Variable weiterhin sichtbar haben, damit ich nach folgenden Schema meine News nach oben bekomme:
Quellcode:

fwrite($datei, "$newpost"."$oldnews");


Weil aber "oldnews" nicht mehr sichtbar ist, funzt das leider nicht. ich hoffe ihr könnt mir helfen.

--

Ich hab mal meine Sig ausgenistet , O O ,
`´°¤|Webmaster beim XdT-Clan|¤°`´°¤|Me at Deviantart|¤°`´
`´°¤|Quatronic|¤°`´`´°¤|Clubwear|¤°`´

zum Seitenanfang zum Seitenende Profil || Suche
001
29.09.2001, 20:54
TheTinySteini



Quellcode:
<?
$oldnews = '';
$datei= fopen("news.php3", r);
while (!feof($datei)) {
$oldnews = fgets($datei,10000);
}
echo $oldnews;
?>

Aber vielleicht isses für dich besser, wenn du statt fopen und fgets gleich file( "news.php3") nimmst, dann haste die gleich in einem array. Wenn du also pro News genau eine Zeile hast, dann ist das die beste Möglichkeit, denke ich.

--

TheTinySteini
Coder Poke646
"Don't Panic" - Hitchhiker's Guide to the Galaxy


Dieser Beitrag wurde am 29.09.2001 um 20:56 von TheTinySteini bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
002
30.09.2001, 10:39
bArTmAn



$oldnews muss nämlich global definiert werden, also vor der while schleife

--

zum Seitenanfang zum Seitenende Profil || Suche
003
30.09.2001, 14:19
Grim_Reaper



also das mit dem array hab ich auch schon ausprobiert, aber leider liest er immer nur die erste Zeile.

Dann hab ich bArTmAn's Tipp probiert und das so gemacht:

Quellcode:
<?
global $oldnews;
$newsdatei= fopen("news.php3",r);
while (!feof($newsdatei)) {

                $oldnews = fgets($newsdatei,1000);



}

echo $oldnews;


?>

ich hab mir dann den Quelltext angeguckt, nachdem er es ausgeführt hat und musste feststellen, dass ja nur die letzte Zeile von der news.php3 drin steht.

Ich hatte den Teil:

Quellcode:


while (!feof($newsdatei)) {

                $oldnews = fgets($newsdatei,1000);
echo $oldnews;


}

falsch verstanden. Er liest bei jedem Durchgang ja nur eine Zeile und gibt sie wieder aus, so das am Ende nur noch die letzte in $oldnews steht.

Also lautet meine Frage jetzt anders:
Muss ich die news.php3 so umändern, dass sie komplett nur aus einer Zeile besteht, oder gibt es eine andere Möglichkeit, die gesamte (mehreilige) news.php3 in eine Variable einzulesen?

--

Ich hab mal meine Sig ausgenistet , O O ,
`´°¤|Webmaster beim XdT-Clan|¤°`´°¤|Me at Deviantart|¤°`´
`´°¤|Quatronic|¤°`´`´°¤|Clubwear|¤°`´

zum Seitenanfang zum Seitenende Profil || Suche
004
01.10.2001, 02:45
Retro



Yo Grimi! *g*

Ich hab was intressantes für dich gefunden!
Du willst ja etwas an den Anfang der Datei schreiben... da gibt es den Befehl namens "rewind();"! Der setzt den Cursor auf den Anfang der Datei, wenn ich das recht verstanden habe lässt es sich damit machen, und zwar besser als mit copy ;)

Das ganze findeste hier:
http://www.php3-forum.de/befehle/rewind.htm

Und das hier ist ne auflistung sehr vieler (aller?) nützliche Befehle die mir stehts weiterhilft =)
http://www.php3-forum.de/befehlverzeichnis.htm

Und die Ursprüngliche Seite is auch intressant *g*
http://www.php3-forum.de/

Na dann mal viel Spaß! ;)
Und ich versuch mich auch grad an nem Newsskript, und dieser Befehl hat mich erstmal aufathmen lassen... muss mal sehen, wenn du intresse hast können wir ja zusammen dran arbeiten, ich hab schon nen bissel mehr erfahrung in PHP oder besser gesagt ich finde mich immer gut durch! :)

Also wenn du lust hast... ICQ# 92405168

--

shielding people from their own stupidity is an evolutionary step backwards anyway.

/* God is dead!............Nietzsche */
/* Nietzsche is dead!......God */
/* Nietzsche is God!.......The Dead */


Dieser Beitrag wurde am 01.10.2001 um 02:45 von Retro bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
005
01.10.2001, 16:44
TheTinySteini



Hmpf...

Quellcode:$news = file('deinenewsdatei.dat');

for( $i = 0; $i < count( $news ); $i++ )
print '<p>'. $news[$i] .'</p>';

$np = fopen('deinenewsdatei.dat');

if( $np )
{
fwrite "DiesisteineneueNews\n";
for( $i = 0; $i < count( $news ); $i++ )
fwrite $news[$i];
fclose( $np );
}

--

TheTinySteini
Coder Poke646
"Don't Panic" - Hitchhiker's Guide to the Galaxy

zum Seitenanfang zum Seitenende Profil || Suche