PHP problem

  • Ich hab ein problem und zwar will ich wenn man auf den Button klickt das er den spieler +100 punkte gibt ich hab es schon vor gemacht aber hab keine ahnung was falsch ich

    PHP-Quellcode

    1. $abfrage = "SELECT id FROM NNGuser_data";
    2. $ergebnis = mysqli_query($db, $id);
    3. $abfrage = "SELECT punkte FROM NNGuser_data";
    4. $ergebnis = mysqli_query($db, $cash);
    5. $missioncash = 100;
    6. if($_POST["quest"])
    7. {
    8. if($userdata["id"] == $id)
    9. {
    10. $gesamtcash = $cash + $missioncash;
    11. $aendern = "UPDATE NGGuser_data Set punkte = $gesamtcash WHERE id = $id";
    12. $update = mysqli_query($db, $aendern);
    13. }
    14. }
    15. echo '<form action="" method="post">
    16. <input name="quest" type="submit" value="Test" />';
    Alles anzeigen



    Wenn es noobig aussieht tut mir leid ich beschäftige mich erst seit heute damit hehe ^^
  • Drasko schrieb:

    Du sendest den Query falsch

    PHP-Quellcode

    1. $ergebnis = mysqli_query($db, $abfrage ,$id);

    Siehe hier: de1.php.net/mysqli_query (Prozedualer Stil)


    ist nicht zwingend notwendig wenn du dir die Beispiele angesehen hättest ;)

    #e
    Probier es mal so aber NUR wenn "$db" so bei dir aussieht:

    PHP-Quellcode

    1. $db = new mysqli("HOST", "USER", "PW", "DB");

    PHP-Quellcode

    1. $abfrage = "SELECT id FROM NNGuser_data";
    2. $id = $db->query($abfrage);
    3. $abfrage2 = "SELECT punkte FROM NNGuser_data";
    4. $cash = $db->query($abfrage2);
    5. $missioncash = 100;
    6. if($_POST["quest"])
    7. {
    8. if($userdata["id"] == $id)
    9. {
    10. $gesamtcash = $cash + $missioncash;
    11. $aendern = "UPDATE NGGuser_data SET punkte = '{$gesamtcash}' WHERE id = '{$id}'";
    12. $db->query($aendern);
    13. }
    14. }
    15. echo '<form action="" method="post">
    16. <input name="quest" type="submit" value="Test" />';
    Alles anzeigen


    Und warum lässt du überhaupt 2x "$ergebnis" zuweisen wenn du es nicht einmal verwendest?

    #e2 kein Wunder das es nicht funktioniert, du tust den wert "cash" und "id" nirgentwo zuweisen. (Copy&Paste?)
    Es müsste so jetzt gehen, aber ich würde dir raaten mehr über MySQLi zu lernen.
    Insbesondere, ist es besser das mit mysqli_fetch_object (oder es direkt alles in einem Query) zu machen, da du mit deiner Methode mehrere Querys sendest, obwohl das nicht nötig ist.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von [BlaZZeR]BirD ()

  • [BlaZZeR]BirD schrieb:

    Drasko schrieb:

    Du sendest den Query falsch

    PHP-Quellcode

    1. $ergebnis = mysqli_query($db, $abfrage ,$id);

    Siehe hier: de1.php.net/mysqli_query (Prozedualer Stil)


    ist nicht zwingend notwendig wenn du dir die Beispiele angesehen hättest ;)

    #e
    Probier es mal so aber NUR wenn "$db" so bei dir aussieht:

    PHP-Quellcode

    1. $db = new mysqli("HOST", "USER", "PW", "DB");

    PHP-Quellcode

    1. $abfrage = "SELECT id FROM NNGuser_data";
    2. $id = $db->query($abfrage);
    3. $abfrage2 = "SELECT punkte FROM NNGuser_data";
    4. $cash = $db->query($abfrage2);
    5. $missioncash = 100;
    6. if($_POST["quest"])
    7. {
    8. if($userdata["id"] == $id)
    9. {
    10. $gesamtcash = $cash + $missioncash;
    11. $aendern = "UPDATE NGGuser_data SET punkte = '{$gesamtcash}' WHERE id = '{$id}'";
    12. $db->query($aendern);
    13. }
    14. }
    15. echo '<form action="" method="post">
    16. <input name="quest" type="submit" value="Test" />';
    Alles anzeigen


    Und warum lässt du überhaupt 2x "$ergebnis" zuweisen wenn du es nicht einmal verwendest?

    #e2 kein Wunder das es nicht funktioniert, du tust den wert "cash" und "id" nirgentwo zuweisen. (Copy&Paste?)
    Es müsste so jetzt gehen, aber ich würde dir raaten mehr über MySQLi zu lernen.
    Insbesondere, ist es besser das mit mysqli_fetch_object (oder es direkt alles in einem Query) zu machen, da du mit deiner Methode mehrere Querys sendest, obwohl das nicht nötig ist.


    Nein kein copy & paste ja ich wollte einfach etwas rum probieren ich werde natürlich weiter lernen und mir mehr sachen angucken ich mache echt fehler die ich null bemerke tut mir leid :/

    aber danke für die hilfe