Sponsor-Board.de

Normale Version: PHP Verzögern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hey
ich versuche

PHP-Code:
mysql_query("UPDATE *** SET ***=***+'***' WHERE ***='***'");
mysql_query("INSERT INTO *** (***, ***) VALUES ('***, '***')"); 

eine verzögerung mit sleep(10) ect. aber es kommt nur heraus das die Seite länger ladet...Wie könnte ich das machen nur das das eine langsamer ladet?
Danke im vorraus!

Kommt darauf an, was mit den Datenbank-Einträgen erreicht werden soll und wieso eine Verzögerung sein soll (?).
usleep hatte ich schon mal probiert.
Verzögen will ich das man nicht gleich Geld bekommt bei Dieb-24
du kannst nur phpseitig eine funktion einbinden, um den start des Codes zu verschieben, geparst wird er und die homepage dennoch erst danach.

du kannst eine versteckte form einrichten und mithilfe von javascript eine richtige verzögerung mithilfe von setTimeout und submit() zu erwirken, die die Seite laden lässt und nach dem Timer die Form aufruft, damit derjenige sein Geld bekommt.
Ich denke da ist die beste Lösung nur zusammen mit Javascript(AJAX):
PHP ist Serverseitig. Es verarbeitet erst den Code und gibt danach die Seite an deinen Client(Browser) weiter. In zusammenarbeit mit AJAX(Javascript->Clientseitig) kannst du während die Seite offen ist, eine andere Datei im Hintergrund ausführen, etwas an sie senden oder etwas anfordern mit GET und POST.
Naja mit Javascript bzw. Ajax wird das schlechter gehen...
Adde mich mal in ICQ, dann kann ich dir ggf. helfen was dein Problem angeht.

Zitat:
Unterbricht die weitere Skript-Ausführung für die angegebene Anzahl von Sekunden.

[Link: Registrierung erforderlich]

Irgendwas musst du da falsch machen wenn es nicht klappt.

Hast du sleep auch an den Anfang direkt nach <?php gesetzt?

Storage, ich glaube nicht, dass er ALLES verzögern will. Er möchte, dass die Seite aufgerufen wird und 10 Sekunden nach Seitenaufruf dann etwas in nen MySQL Table eingetragen wird. Nach meiner Kenntnis wirst du das mit PHP nicht machen können, da PHP erst ALLES liest und dann die Seite anzeigt. Bedeutet, dass es sleep(10); sieht, 10 Sekunden wartet und dann dir die Seite ausgibt. Ist das Problem eigentlich nach wie vor vorhanden?
Ja, ich suche immer noch eine Lösung. vlt. mit include eine externe .php Datei machen mit sleep() damit die richtige Seite weiterladet.
Hallo

Wen du eine einfach Verzögerung im Skript brauchst:

//dumy Code

hole "a" einer berechnung
sleep(10) //10 sec pause
rechne "a" + 5

//end dumy Code

Meistens löse ich eine solche Verzögerung mit einer FOR-Schleife und einem Ping:

//Ungetesteter Code (ca 10 sec scriptpause

//mache irgend etwas
for(i=0;i<10;i++){
echo exec ('ping -w 1000 8.8.8.8'); //Pinge zu google mit einem Timeout von 1sec
}
//mache irgend etwas
//ende Ungetesteter Code


Eine andere Variante, welche ich in deinem falle noch sehe, ist zwar ein wenig unschön aber du könntest dein Problem einfach und sehr effizient lösen. Du müsstest eine komplexe SQL abfrage Erstellen/Generiern (sozusagen Codierung mit if und while in SQL) da, wie ich gesehen habe, noch alles im php Teil läuft, könntest du die SQL-Abfrage durch ein kleines Programm aus dem php anstossen und direkt auf dem Server ausführen lassen...
(eventuell warten bis die Aktion abgeschlossen wurde mit einem Programmhandler...)

Da du somit den php/sql-mysql Handler umgehst ist diese Variante bei grossen Datenbanken und vielen Updates auf spezifische Zeilen aus Erfahrung sehr effektiv...

Ich hoffe, ich konnte helfen

Belliger
Seiten: 1 2
Referenz-URLs