Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Wie sende ich Punktestand in Datenbank zur richtigen Id ?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] Wie sende ich Punktestand in Datenbank zur richtigen Id ?

    Hallo,

    brauche für folgendes eure Hilfe.

    Es geht sich darum, dass ich Usern, die sich bei mir eingeloggt haben,
    ein Spiel in Art von "Wer wird Millionär" gemacht habe.
    Das Ganze funktioniert mit einem Formular so ziemlich gut.
    Auf einer nächsten Seite werden die Antworten zu den Fragen
    auf richtig oder falsch kontrolliert.
    Der User sieht hier auch seinen erspielten Punktestand.
    Dieser wird ihm mit:

    PHP-Code:
    <? echo $x.'/3';?>
    ausgegeben.
    Jetzt möchte ich aber, das der Punktestand beim angemeldeten
    User in der Datenbank mit der Spalte "Punktestand" notiert wird.

    Dazu is auch schon auf der Auflösungsseite mit den Ergebnissen
    ein include befehl:

    PHP-Code:
    <?php 
    include ("checkuser.php"); 
    ?>
    [php]
    Die Variable mit den Daten lautet:
    $_SESSION["user_id"]

    Hab hier schon mal einen Versuch unternommen:
    <?
    $eintrag = "INSERT INTO neuebenutzer where id == ($_SESSION["user_id"]) (Punktestand) VALUES ('$x')";
    ?>
    Nur die Syntax zeigt Fehler an, und so richtig weiß ich auch nicht,
    wie ich die Variablen Daten in die DB bekomme.
    Wer toll, wenn jemand helfen könnte.

    DANKE im Vorraus

  • #2
    Also ganz ehrlich hab ich nicht wirklich nen Plan, weil ich php neuling bin, aber weil ich gerade nix besseres zu tun hab, ich würdes vielleicht mal so versuchen:

    <?
    $eintrag = "INSERT INTO neuebenutzer where id == ($_SESSION['user_id']) (Punktestand) VALUES ('$x')";
    ?>

    aber ob das was bringt weiß ich auch nicht... Bin eben neu....

    Kommentar


    • #3
      Dank

      Danke.
      Nur, die Syntax zeigt rot.

      Funktioniert auch so nicht.

      Kommentar


      • #4
        Nur so als Frage für mich selber, weil ichs nicht weiß... in meinem php-Buch (ich lerne ja erst 3 Tage) steht == nicht als Mysql Operator, vielleicht liegt es ja daran...

        IM Buch steht:

        = : Ist Gleich; bei MySql wird das einfache Gleichheitszeichen sowohl für Zuweisungen als auch für Vergleiche verwendet

        hmm... bisher war fast alles, was in dem Buch steht falsch, aber ich habs halt gerade so zufällig gesehen...

        Kommentar


        • #5
          Die Syntax zeigt immer noch rot.
          Ich seh nur keinen Fehler.

          PHP-Code:
          <? 
          $eintrag = "INSERT INTO neuebenutzer where id = ($_SESSION['user_id']) (Punktestand) VALUES ('$x')"; 
          ?>

          Kommentar


          • #6
            Noch mal so ne Idee:

            schreib

            Code:
            $irgendebbis = $_SESSION["user_id"];
            
            <? 
              $eintrag = "INSERT INTO neuebenutzer where id = ($irgendebbis)(Punktestand) VALUES ('$x')"; 
            ?>
            vielleicht bringt das was

            Kommentar


            • #7
              PHP-Code:
              <? 
                $eintrag = "INSERT INTO benutzerdaten (Punktestand) VALUES ('$x')"; 
              ?> 
               <?
                $eintragen = mysql_query($eintrag);
                ?>
              So funktionierts ja.
              Er fängt eine ganz neue Zelle an, und schreibt in dem Bereich "Punktestand" den Wert der Variable x rein.
              Aber sobald ich hinter ('$x') ein :
              PHP-Code:
              where Id=
              setze, kommt in der Bank garnichts mehr an.

              Obwohl es einen Id:1 Nutzer gibt. Nämlich "probehalber" ich selbst. .

              Auch wenn ich folgendes eingebe, kommt nichts an.
              where Nickname=blablabal.
              Funktioniert auch nicht.
              Obwohl alles dort in der DB existiert.

              Bitte um weitere Hilfe.

              Kommentar


              • #8
                Willst du jetzt einen neuem Eintrag mache? Oder einen Bestehenden ändern. Bei einem Neuen kannst du natürlich keine Bedingung (where id = 1) angeben. Und bei einer Änderung brauchst du natürlich UPDATE und nicht INSERT:
                PHP-Code:
                $eintrag "UPDATE benutzerdaten
                    SET Punktestand = 
                $x";
                $eintragen mysql_query($eintrag) or die(mysql_error()); 

                Kommentar


                • #9
                  Super.
                  Funktioniert schon.
                  Nur jetzt zeigt er bei jedem in der DB stehenden User
                  die Zahl an.
                  Er soll aber nur da die Zahl einfügen, wo
                  die User_Id der DB Id übereinstimmt.

                  sieht so aus:
                  PHP-Code:
                  <?$daten = $_SESSION["user_id"];?>
                  Die $daten enthält die ID des gerade angemeldeten Users.

                  $daten stimmt mit der DB Id überein.
                  Aber wie schreibe ich dass jetzt in den SQL Befehl ?

                  Es müsste so aussehen, besser gesagt so ähnlich:
                  PHP-Code:
                  Where Id=$daten 

                  Kommentar


                  • #10
                    Ja, das mit dem Where schreibst du einfach hinten dran.
                    Code:
                    UPDATE benutzerdaten
                    SET Punktestand = $x
                    WHERE Id = $daten

                    Kommentar

                    Lädt...
                    X