Text erst nach einer bestimmten Zeit (10 Sekunden) anzeigen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
angabe
anweisung
bereich
besucher
code
datei
falle
familie
fehler
funktionieren
gut code
inhalt
minute
output
schiffer
sekunde
streit
text
trage
variable ausgeben
-
HI,
Ist es mit PHP möglich einen Text erst nach einer festgelegten Zeit auf der Homepage erscheinen zu lassen?
Hab bislang im Internet keine passende Möglichkeit gefunden....
Könnt ihr mir weiterhelfen? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
mit php entscheidest du serverseitig den output.. bei deinen 10sec würds bedeuten in php, dass die seite 10 sec zum laden braucht. Das würde ich als User eher nciht erdulden wollen.. ich empfehle dir daher lieber, mithilfe von Javascript den Timer clientseitig zu integrieren.
Cel -
ja, ok mit Javascript kenn ich mich nicht so aus und finde auch nicht die passenden Scripte...
Hast du ne Idee wie das Skript dann aussehen müsste oder nen Link? -
<html> <head> <script type=\"text/javascript\"> function changeHtml() { document.getElementById(\"TollesDiv\").innerHTML=\'10 Sekunden sind rum\'; } </script> </head> <body onLoad=\"window.setTimeout(changeHtml, 10000);\"> <div id=\"TollesDiv\" name=\"a2\"> bitte warten.. </div> </body> </html>
Das hier könnte vergleichbar sein.. falls etwas nicht stimmt, bitte sieh mir nach, ich beschäftige mich seit 20 minuten mit javascript
Mfg
Cel -
Erstelle eine div-Box, die du mittels der Style-Anweisung \"visibility:hidden;\" vorrerst unsichtbar lässt.
Mit JavaScript änderst du nach 10 Sekunden mit der Funktion setTimeout() (Achtung, Zeit in Millisekunden angeben!) die Sichtabrkeit auf visible:
<div id=\"container\" style=\"visibility:hidden;\">Text, text, text...</div> <script type=\"text/javascript\"> function show_container() { document.getElementById(\"container\").style.visibility = \"visible\"; } window.setTimeout(\"show_container()\", 10000); </script>
(Getestet und funktioniert...)
gruß
ferdinand24
//EDIT:
Manmanman, da mach ich mir mal die Mühe und dann kommt jemand daher und ist schneller als ich ;)
Beitrag geändert: 29.3.2008 20:22:46 von ferdinand24 -
müsste mit so funktionieren, sonst guck in die selfhtml im javascript bereich suchen
<script>SetTimeout(\"document.write(\'TEXT\');</script>
edit: zu spät
Beitrag geändert: 29.3.2008 20:19:29 von familie-schiffer -
müsste mit so funktionieren, sonst guck in die selfhtml im javascript bereich suchen
<script>SetTimeout(\"document.write(\'TEXT\');</script>
Wo ist die Deklaration des Scripttyps?
Wo ist die zweite schließende Klammer bzw. die Zeitangabe?
Wo ist die Angabe des Elementes? (window in diesem Falle)
Im Übrigen ist deine Variante recht ungenau, du musst das Script immer genau da einfügen, wo du den Text haben möchtest...
Ansonsten funktioniert es SO auch gut:
<script type=\"text/javascript\"> window.setTimeout(\"document.write(\'TEXT\')\", 10000); </script>
gruß
ferdinand24
Beitrag geändert: 29.3.2008 20:23:26 von ferdinand24 -
Wow, danke für die ganzen Antworten.
Habe mich jetzt für dieses Script entschieden:
<div id=\"container\" style=\"visibility:hidden;\">Text, text, text...</div> <script type=\"text/javascript\"> function show_container() { document.getElementById(\"container\").style.visibility = \"visible\"; } window.setTimeout(\"show_container()\", 10000); </script>
kann ich mit dieser Lösung auch eine Variable ausgeben lassen statt Text? Es soll dann die Variable $visits ausgegeben werden -
ja gib das mit echo aus und setz die variable ein
falls du mit php meinst -
kann ich mit dieser Lösung auch eine Variable ausgeben lassen statt Text? Es soll dann die Variable $visits ausgegeben werden
Ja, trage einfach in die DIV die Variable mittels echo(); ein:
<div id=\"visits\" style=\"visibility:hidden;\"> <?php echo $visits; ?> </div> <script type=\"text/javascript\"> function show_visits() { document.getElementById(\"visits\").style.visibility = \"visible\"; } window.setTimeout(\"show_visits()\", 10000); </script>
gruß
ferdinand24
Beitrag geändert: 29.3.2008 20:44:29 von ferdinand24 -
Jetzt kommt ein Fehler:
Du bist Besucher Nr.<br> \'; include(\'flount.php\'); <div id=\"container\" style=\"visibility:hidden;\">\'echo $visits.\'</div> <script type=\"text/javascript\"> function show_container() { document.getElementById(\"container\").style.visibility = \"visible\"; } window.setTimeout(\"show_container()\", 10000); </script>
Hab ich einen Fehler gemacht beim Einbinden der Variablen? -
<?php include(\"flount.php\"); echo \"Du bist Besucher Nr.<br> \"; $anzeigetext = \"<div id=\\\'container\\\' style=\\\'visibility:hidden;\\\'>\\\'echo $visits.\\\'</div> <script type=\\\'text/javascript\\\'> function show_container() { document.getElementById(\\\'container\\\').style.visibility = \\\'visible\\\'; } window.setTimeout(\\\'show_container()\\\', 10000); </script> \"; ?>
flount.php
# <?php $visits = file_get_contents(\"visits.txt\"); $visits++; file_put_contents(\"visits.txt\", $visits); ?>
lege dazu ein datei visits.txt mit inhalt 0 an.
Beitrag geändert: 29.3.2008 20:57:01 von familie-schiffer
/edit: unzählige \"Beatrag geändert...\" entfernt
Beitrag geändert: 30.3.2008 3:58:56 von trueweb -
<?php include(\"flount.php\"); echo \"Du bist Besucher Nr.<br> \"; $anzeigetext = \"<div id=\\\'container\\\' style=\\\'visibility:hidden;\\\'>\\\'echo $visits.\\\'</div> <script type=\\\'text/javascript\\\'> function show_container() { document.getElementById(\\\'container\\\').style.visibility = \\\'visible\\\'; } window.setTimeout(\\\'show_container()\\\', 10000); </script> \"; ?>
flount.php
# <?php $visits = file_get_contents(\"visits.txt\"); $visits++; file_put_contents(\"visits.txt\", $visits); ?>
lege dazu ein datei visits.txt mit inhalt 0 an.
Du möchtest also ernsthaft den ganzen JavaScript-Teil durch den PHP-Interpreter schleusen?
Ist doch viel zu fehleranfällig...
Theoretisch musst du NUR die Ausgabe der Variable $visits per PHP machen, so, wie ich es oben schon angeführt habe...
Im Übrigen solltest du lieber doppelte Quotes verwenden und diese dann escapen, als nur die einfachen zu benutzen.
Das Zählscript sollte noch so erweitert werden, dass die Datei automatisch neu angelegt wird, wenn sie nicht existiert. Das kannst du bestens mit fopen(); machen. Ich hätte an dieser Stelle auch eher fopen();, fwrite();, fread() und fclose(); verwendet, aber über geschmack lässt sich ja streiten
gruß
ferdinand24
gruß
ferdinand24 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage