kostenloser Webspace werbefrei: lima-city


Rohstoff zuwachs

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    gollum1990

    gollum1990 hat kostenlosen Webspace.

    Wie kann ich in einem browsergame, ein rohstoffzuwachs mit drei verschieden Dingen z.B.
    Gold Silber Kupfer
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. b*********l

    etwas dazu addieren...dumme frage :-)
  4. Autor dieses Themas

    gollum1990

    gollum1990 hat kostenlosen Webspace.

    und wie????

    Die MYSQL-Tabelle habe ich schon, das ausgeben
    wird wohl kein Probelm sein, aber addieren???
    und dass dann updaten wiss ich nit

    Beitrag ge?ndert am 28.02.2006 17:04 von gollum1990
  5. e********l

    einfach ein SQL Update Statement formulieren
    zb:

    UPDATE MeineTabelle
    SET Holz = Holz + 10, Gold = Gold + 20, Eisen = Eisen + 30
    WHERE ID = 3

    Thats it.
  6. Autor dieses Themas

    gollum1990

    gollum1990 hat kostenlosen Webspace.

    Soweit habe ich schon, aber der browser zeigt mir nichts an hier mal dass script:
    <?php 
    error_reporting(E_ALL);
    
    $verbindung = mysql_connect ("localhost", "root", "-------") or  
         die ("keine Verbindung m?glich.  Benutzername oder Passwort sind falsch"); 
    
    mysql_select_db("bauscript") 
    or die ("Die Datenbank existiert nicht."); 
    
    
    $query = "UPDATE rohstoffe Set Gold=Gold+130, Holz=holz+156, Stein=Stein+204 WHERE id = '2'"; 
    $result = mysql_query($query) or die ("MySQL-Fehler: " . mysql_error()); 
    
    $abfrage = "SELECT Gold, Stein, Holz FROM rohstoffe"; 
    $ergebnis = mysql_query($abfrage)  or die ("MySQL-Fehler: " . mysql_error()); 
    while($row = mysql_fetch_object($ergebnis)) 
       echo "$row->Gold, $row->Stein, $row->Holz <br>"; 
    mysql_close($verbindung); 
    
    ?>
  7. b*********l

    ?nert er denn in der Datenbank alles???
  8. Autor dieses Themas

    gollum1990

    gollum1990 hat kostenlosen Webspace.

    Also im Browser zeigt er die ganze zeit nur eine zahl statt drei, da steht dann nur 100, ich musste ein INSERT INTO im phpadmin
    machen dass er ?berhaupt was anzeigt.
    Ich habe n?mlich Bei jedem 100 gemacht.

    Beitrag ge?ndert am 1.03.2006 17:41 von gollum1990
  9. b*********l

    while($row = mysql_fetch_object($ergebnis))

    ich glaub die zeile is falsch....

    mach ma ne for- schleife

    mit $anz=mysql_num_rows($ergebnis)


  10. while($row = mysql_fetch_object($ergebnis))

    echo "$row->Gold, $row->Stein, $row->Holz <br>";


    und was ist wenn du es mal mit

    while($row = mysql_fetch_assoc($ergebnis))
    {echo 
    "Gold=$row['gold'] 
     Holz=$row['holz'] 
     Stein$row['stein']
    ";
    }
  11. Autor dieses Themas

    gollum1990

    gollum1990 hat kostenlosen Webspace.

    Also wenn ich euere vorschl?ge annehme
    kommt von bienespiel diese Fehlermeldung:
    Parse error: syntax error, unexpected T_WHILE in C:\Programme\xampp\htdocs\Rohstoffe.php on line 12

    und von dir

    bekomme ich diese Fehlermeldung:


    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\Programme\xampp\htdocs\Rohstoffe.php on line 35

    Und das script:
    <?php 
    
    error_reporting(E_ALL);
    
    
    
    $verbindung = mysql_connect ("localhost", "root", "--------") or  
    
         die ("keine Verbindung m?glich.  Benutzername oder Passwort sind falsch"); 
    
    
    
    mysql_select_db("BG") 
    
    or die ("Die Datenbank existiert nicht."); 
    
    
    
    
    
    $query = "UPDATE rohstoffe Set Gold=Gold+130, Holz=holz+156, Stein=Stein+204 WHERE id = '2'"; 
    
    $result = mysql_query($query) or die ("MySQL-Fehler: " . mysql_error()); 
    
    
    
    $abfrage = "SELECT Gold, Stein, Holz FROM rohstoffe"; 
    
    $ergebnis = mysql_query($abfrage)  or die ("MySQL-Fehler: " . mysql_error()); 
    
    while($row = mysql_fetch_assoc($ergebnis))
    
    {echo 
    
    "Gold=$row['gold'] 
    
     Holz=$row['holz'] 
    
     Stein$row['stein']
    
    ";
    
    }
    
    
    
    ?>
    
    mysql_close($verbindung); 
    
    
    
    ?>


    Beitrag ge?ndert am 1.03.2006 18:27 von gollum1990
  12. b*********l

    $anz= mysql_num_rows($ergebnis);

    for($i==1;$i<=$anz;$i++)
    {
    $row = mysql_fetch_array($zeile);
    echo "$row->Gold, $row->Stein, $row->Holz <br>";
    }



    ----------------------
    probiers mal so (ganze while-schleife ersetzen
  13. Autor dieses Themas

    gollum1990

    gollum1990 hat kostenlosen Webspace.

    funktioniert nicht
  14. 0******a

    Dein eigenes Skript war schon in Ordnung. Du solltest aber auch mal "<html><body>" und die dazu passenden schliessenden Tags ausgeben. Ansonsten zeigt dir dein Browser n?mlich nichts an, ausser du schaust in den Quelltext der HTML-Ausgabe (im Browser-Men? unter "Ansicht->Quelltext").
  15. Autor dieses Themas

    gollum1990

    gollum1990 hat kostenlosen Webspace.

    also ich habe jetzt die L?sung, wie kann ich immer zur vollen Stunde dass Script ausf?hren,
    damit mein ich pro Stunde kriegt man Rohstoffe.

    Hier mal mein L?sungnsscript:

    <?php

    $verbindung = mysql_connect ("localhost", "root", "xxxxx") or
    die ("keine Verbindung m?glich. Benutzername oder Passwort sind falsch");

    mysql_select_db("BG24", $verbindung)
    or die ("Die Datenbank existiert nicht.");

    $query = "UPDATE `Rohstoffe` SET `Gold` = `Gold` + 100, `Holz` = `Holz` + 100, `Stein` = `Stein` + 20 WHERE `id` = '2';";
    $result = mysql_query($query, $verbindung) or die ("MySQL-Fehler: " . mysql_error());

    $abfrage = "SELECT `Gold`, `Holz`, `Stein` FROM `Rohstoffe`";
    $ergebnis = mysql_query($abfrage, $verbindung) or die ("MySQL-Fehler: " . mysql_error());
    while($row = mysql_fetch_object($ergebnis))
    echo($row->Gold.", ".$row->Holz.", ".$row->Stein." <br>");
    mysql_close($verbindung);

    ?>
  16. Hallo zusammen,
    wie kann man denn sowas berechnen, dass der User die Rohstoffe aller 10 min bekommt?
  17. erkundige dich mal bei timestamp. Bin ich auch gerade bei. Mehr kann ich dir leider nicht sagen.
    Ich schick dir mal ne PM
  18. e********l

    Am einfachsten mit einem Cron-Job.
  19. n********r


    Hallo zusammen,
    wie kann man denn sowas berechnen, dass der User die Rohstoffe aller 10 min bekommt?


    DU schreibst ein Script, dass die Daten der User einfach ausließt um die Menge erhöht und dann wieder speichert in der DB.
    Dann lässt du per Cronjob, wie mein Vorposter schon gesagt hat, das Script alle 10 Minuten ausführen.
  20. So mal edit weils vllt etwas kompliziert ist. folgender ablauf im script:

    1. auslesen zeit letzer seitenaufruf

    2. ausrechnen der zeitdifferenz in sec zwischen letzter seitenaufruf und jetzt //mit time() sollte das ziemlich einfach gehen

    3. $zwischenwert = sekunden * rhostoffproduktion pro h

    4. $addierend = $zwischenwert dividiert durch 3600

    5. $addierend in der mysql datenbank zum bisherigen wert addieren (mit nachkommastellen)

    6. rohstoffe auslesen und auf 0 nachkommastellen runden

    7. rohstoffe ausgeben

    8. aktueller timestamp spiechern (in der mysql)

    --------------------------------------------------
    Edit nr 8: andere editmeldungen gelöscht xD

    Beitrag geändert: 7.7.2007 12:23:51 von infanteria

    Beitrag geändert: 7.7.2007 13:03:28 von infanteria
  21. das wäre es mal wert als tutorial zu erstellen. Ich hab sowas noch nicht gefunden. Jemand anders?
  22. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!