SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Der CSS-Problemlöser

Der CSS-Problemlöser zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 01.04.2005, 12:55:19
Spike15 Spike15 ist offline
Anfänger
 
Registriert seit: Jun 2004
Beiträge: 119
Das soll nach 1 h ausgeführt werden!

Hallo liebe Mitglieder und Teammitglieder, ich bin gerade dabei ein Browsergame zu erstellen, doch jetzt bin ich auf ein problem gestoßen, wo ich überhaupt nicht weiter weiß, ich hoffe ihr könnt mir helfen.

Also ich möchte das wenn ein User zum Beispiel 11:30 auf den Button bauen drückt, das um 12:30 also genau eine stunde später ein mysql update befehl erfolgt,
ich habe schon so meine gedanken mit date("H:i"); usw. aber ich wieß net weiter, könnt ihr mir vielleicht helfen?


Danke.
Mit Zitat antworten
  #2  
Alt 01.04.2005, 13:15:49
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Das soll nach 1 h ausgeführt werden!

Speicher in der Datenbank (oder irgendwo anders ab), wann der Baubeginn erfolgte. Bei jedem weiteren Aufruf einer bestimmten Datei, überprüfst du, ob der Baubeginn schon eine Stunde (oder länger) her ist. Wenn dies der Fall ist, führst du den UPDATE-Befehl aus.
Mit Zitat antworten
  #3  
Alt 01.04.2005, 13:22:13
Spike15 Spike15 ist offline
Anfänger
 
Registriert seit: Jun 2004
Beiträge: 119
AW: Das soll nach 1 h ausgeführt werden!

mhh okay aber wie frage ich des ab?

mhh und was ist wenn er garnicht mehr baut? dann bekommt er doch auch keine rohstoffe, mhh kann man das irgendwie anders lösen?

trotzdem vielen dank!
Mit Zitat antworten
  #4  
Alt 01.04.2005, 13:23:48
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Das soll nach 1 h ausgeführt werden!

Zitat:
Zitat von Spike15
mhh okay aber wie frage ich des ab?
PHP-Code:
<?php
    
if((time() - $baubeginn) > 3600) {
        
//  update
    
}
?>
Zitat:
Zitat von Spike15
mhh und was ist wenn er garnicht mehr baut? dann bekommt er doch auch keine rohstoffe, mhh kann man das irgendwie anders lösen?
Da ich dein System nicht kenne, kann ich dir dazu auch nicht mehr sagen.
Mit Zitat antworten
  #5  
Alt 01.04.2005, 13:34:28
Spike15 Spike15 ist offline
Anfänger
 
Registriert seit: Jun 2004
Beiträge: 119
AW: Das soll nach 1 h ausgeführt werden!

vielendank,mhhh

kann man auch eine abfrage starte das immer alle 5 minuten rohstoffe hinzu kommen

also das 11:35 wieder etwas kommt 11:40 wieder ein update befehl

mhh was musstn du wissen, damit du mir vielelicht helfen könntest?

vielen Dank
Mit Zitat antworten
  #6  
Alt 01.04.2005, 13:44:03
Benutzerbild von |Coding
|Coding |Coding ist offline
Administrator
 
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 41
Beiträge: 5.255
|Coding eine Nachricht über Skype™ schicken
AW: Das soll nach 1 h ausgeführt werden!

Die 5 Minutenschritte musst Du genau so Abfragen wie Du das auch mit dem stündlichen Update machst.
__________________
Gruß |Coding

---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten
  #7  
Alt 03.04.2005, 11:55:42
Spike15 Spike15 ist offline
Anfänger
 
Registriert seit: Jun 2004
Beiträge: 119
AW: Das soll nach 1 h ausgeführt werden!

Jo danke schön, das konnte ich mir irgendwie schon denkekn, bloß mein problem ist jetzt, ich weiß wirklich nicht man das stunden script macht wo aber erst eine stundegezählt wird wenn er geklickt hat, ich danke euch!
Mit Zitat antworten
  #8  
Alt 03.04.2005, 14:13:40
Benutzerbild von yozek
yozek yozek ist offline
Junior Member
 
Registriert seit: May 2004
Ort: Köln
Alter: 43
Beiträge: 226
yozek eine Nachricht über ICQ schicken yozek eine Nachricht über MSN schicken
AW: Das soll nach 1 h ausgeführt werden!

Hossa,

folgendermassen kann das gehen:

HTML-Code:
<form action='dobegin.php' method='post'>
<hidden name='konklave' value='1'>
<input type='submit' value='Konklave bauen'>
</form>
Datei dobegin.php
PHP-Code:
<?
include_once('mysql.inc.php'); // MySQL-Verbindung
$user_id = $_SESSION['user_id']; // Die ID des Users

if ($_POST['konklave']):
   //Datenbank abfragen ob gerade ggf. schon was im Bau
   $db->query("SELECT zeit from bauen where userid = $user_id, bauart = 'konklave'");
   if ($db->num_row > 0):
    die('Gerade im Bau! Netter Versuch ;)'); // Abbrechen, da schon vorhanden
   else:
    $db->query("INSERT INTO zeit SET (zeit, userid, bauart) (NOW(), $user_id, 'konklave'); // Eintragen
   endif;
endif;
?>
Und die Abfrage, ob alles in Ordnung ist, kannst du so machen
PHP-Code:
$db->query("SELECT zeit, bauwerkid FROM bauen where userid = $user_id");
while (
$row $db->fetch_assoc()):
   if ( 
time)() - $row['zeit'] > 3600):
      
$array_final_update[] = $row['bauwerkid'];
   endif;
endwhile;
foreach (
$array_final_update as $k => $v):
   
$db->query(INSERT INTO bautabelle SET (useridbauwerkid) ($user_id$k);
endforeach; 
Schau dir das mal... habe das gerade in der Scnellnachrichtenseite eingetippt..
Fehler schleichen sich immer ein ;:)

Gruss

Lukas
__________________
yozek

King of my castle - 127.0.0.1
Computer befreien das Denken vom Rechnen
Mit Zitat antworten
  #9  
Alt 03.04.2005, 15:19:22
Benutzerbild von |Coding
|Coding |Coding ist offline
Administrator
 
Registriert seit: Apr 2002
Ort: Bergheim
Alter: 41
Beiträge: 5.255
|Coding eine Nachricht über Skype™ schicken
AW: Das soll nach 1 h ausgeführt werden!

Jo, z.B. hier:

PHP-Code:
foreach($array_final_update as $k => $v): 
   
$db->query('INSERT INTO bautabelle SET (userid, bauwerkid) (' $user_id ', '$k ')'); 
endforeach; 
__________________
Gruß |Coding

---
Qozido® - Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.

www.qozido.de
Mit Zitat antworten
  #10  
Alt 04.04.2005, 15:26:39
Spike15 Spike15 ist offline
Anfänger
 
Registriert seit: Jun 2004
Beiträge: 119
AW: Das soll nach 1 h ausgeführt werden!

Okay danke schön,aber ich habe mich jetzt so entschieden das immer etwas zur vollen stunde kommt, also wenn es 15:00 Uhr ist soll updatet werden wenn es 16:00 Uhr ist usw.

mhh nun habe ich etwas probiert, und habe auch ne stunde gewartet, doch es kommt irgendwie nichts, mhh wo kann hier der fehler liegen

PHP-Code:
/**********| pro Stunde |**********/
$a date("H");
$stunde $db->fetch_query("SELECT * FROM kosten WHERE user = '$ageUser'");
$stunde2 $db->fetch_query("SELECT * FROM bauen WHERE user = '$ageUser'");
$G_stunde $stunde2["gold"] + $stunde["Gstunde"];
$S_stunde $stunde2["steine"] + $stunde["Sstunde"];
$H_stunde $stunde2["holz"] + $stunde["Hstunde"];
$J_stunde $stunde2["nahrung"] + $stunde["Jstunde"];
switch (
$a)    {
        case 
"00":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
        case 
"01":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"02":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"03":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"04":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"05":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"06":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"07":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"08":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"09":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"10":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"11":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"12":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"13":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"14":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"15":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"16":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"17":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"18":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"19":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"20":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"21":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"22":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
            case 
"23":
            
$db->query("UPDATE bauen SET gold = '$G_stunde', steine = '$S_stunde', holz = '$H_stunde', 
nahrung = '$J_stunde', WHERE user = '$ageUser'"
);
            break;
        default:
            
$b "ERROR"
Am anfang das stunde["gold"] + stunde2["Gstunde"] sind einfahc nur werte die drinne stehen also z.b 200 also sollen zu den bestehenden 200 stück adiert werden, nicht das ihr nicht versteht^^

vielen dank.

Geändert von Spike15 (04.04.2005 um 15:28:31 Uhr)
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
session_destroy() wird nicht ausgeführt korsdal PHP für Fortgeschrittene und Experten 1 16.02.2005 23:28:45
SQL-Update wird nicht ausgeführt nivram PHP für Fortgeschrittene und Experten 3 31.01.2005 16:37:27
Wer bekommt diesen Code schneller ausgeführt? tapferesschneid Off Topic Area 0 10.08.2004 23:20:12
Script wird doppelt ausgeführt Stormy PHP Grundlagen 1 05.01.2004 15:21:40
mySql-Fehler - Funktion wird aber ausgeführt Sunny PHP für Fortgeschrittene und Experten 2 16.07.2003 19:46:56


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:39:54 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt