anordnung + selbständiges leeren von dateien?

stephan01

Erfahrenes Mitglied
also, ich wollte soetwas wie einen ticker machen (als einfaches, altmodisches marquee, weil einfach), bei dem jeder was hinzufügen kann....also hab ich das mal probiert....nur meine probleme sind nun:

1) wie kann ich die neusten eingaben zuerst scrollen lassen?
und
2) wie kann ich das script dazu bringen, beim 10. eintrag den 0. zu löschen, also so, dass immer nur 10 schnippsel gescrollt werden?

btw: alles auf textdatei

hier mal der code:
PHP:
<?
if(isset($add)){
	$fp = fopen ("./dd/tick.dat", "a");
	$add = "$add \n";
	fwrite($fp, $add);
	fclose ($fp);
	}
?><html>
<head>
<title>Shoutline!!</title>
</head>
<body>
<p align=center><marquee><font color=darkred face=Verdana><b>
<?
$fcontents = file ('./dd/tick.dat');
while (list ($line_num, $line) = each ($fcontents)) {
	$shout = trim($line);
    echo "[$line_num] <i>$line</i> +++ ";
	}
?>
</b></font></marquee>
</p><p align=center><form action=<? echo "$PHP_SELF"; ?> method=POST><input type=text lenght=25 name=add value=shout!></p>
</body>
</html>

danke für jegliche hilfe :)

tschau, stephan....
 
wie ist die datei aufgebaut?
pro zeile eine nachricht?
falls ja dann ist es leicht:

Punkt 1 + 2:
PHP:
$tick=file("./dd/tick.dat");
$tickc=count($tick);

for($i=$tickc;$i<=($tickc - 10);$i--)
   {
    echo $tick($i);
   }

ACHTUNG: ich habe den code nicht getestet sondern einfach auf die schnelle geschriben.
 
danke für die antwort!!! sieht gut aus, aber müsste das nicht statt
PHP:
for($i=$tickc;$i<=($tickc - 10);$i--)
PHP:
for($i=$tickc;$i>=($tickc - 10);$i--)

heißen? also > statt < ??

ich werd's gleich mal probieren :))
dddaaaaaaannnke :)))
 
gut, grade getestet: ging alles wunderbar, nur hat das script nur das angezeigt:
Array(10) +++ Array(9) +++ Array(8) +++ Array(7) +++ Array(6) +++ (...usw...)

toll, 10 - 0, alles geklappt, nur wie bring ich das teil dazu, die array-inhalte und nicht deren namen (?) zu echo'en??

danke nochmal für die bisherige und jede folgende hilfe :)
 
hab mal nochwas geändert, weil's mir merkwürdig vorkam:
PHP:
echo "<i>".$tick($i)."</i>";

hab übrigens vergessen, das zu erwähnen, dass ich das wieder mit dem <i>, +++ usw gemacht habe....is das der fehler?

jetzt kommt "Fatal error: Call to undefined function: array() in C:\WINDOWS\Desktop\shout.php on line 20" ?! :/

danke nochmal :)
tschau, stephan
 
ups, lauter kleine fehler:

eckige klammern musst verwenden bei array! :)

$ticktext=$tick[$i];
echo "<i>$ticktext</i>";

siehst das passiert wenn man zu schnell was schreibt. :)
 
DAAANKESCHÖÖÖÖN :D :D :D
gleich probieren :)


**EDIT:
scheint zu funktionieren....DAAAAAAAANKE!!!!!!
//EDIT**
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück