Ankündigung

Einklappen
Keine Ankündigung bisher.

Eingabe in Datenbank, falsches Ergebnis

Einklappen

Neue Werbung 2019

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

  • Eingabe in Datenbank, falsches Ergebnis

    hallo,

    versuche diese zwei zufallszahlen und das ergebnis in eine datenbank einzutragen:

    PHP-Code:
    //Zufallszahlen ermitteln
    $zahl1 rand(1,10);
    $zahl2 rand(1,10);
    $ergebnis $zahl1+$zahl2;



    //Zufallszahlen + ID in die Datenbank eintragen
    $sql "INSERT INTO sicherheit(ergebnis, zahl1, zahl2) VALUES('$ergebnis', '$zahl1', '$zahl2')";   
        
    $db_erg mysql_query($sql)
            or die(
    "Anfrage fehlgeschlagen1" mysql_error()); 
    das funktioniert auch so lange, so lange die erste zahl nicht den wert 1 hat.
    denn dann werden diese nicht zusammengezählt sondern hintereinander geschrieben.
    zb:
    zahl1 = 1
    zahl2 = 7
    ergebnis in datenbank =17

    vl kann mir jemand helfen....

    mfg


  • #2
    Glaub ich nicht. Das ist nicht der echte Code, oder?
    --

    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


    --

    Kommentar


    • #3
      '$zahl1' ist falsch, weil Variablenwerte zwischen einzelnen Hochkommata nicht
      eingesetzt werden. Da es numerische Werte sind,
      Code:
      $sql = "INSERT INTO sicherheit(ergebnis, zahl1, zahl2) VALUES ($ergebnis, $zahl1, $zahl2)";

      Kommentar


      • #4
        PHP-Code:
        $zahl1 rand(1,10); 
        $zahl2 rand(1,10); 
        $zahl1 = (int)$zahl1;
        $zahl2 = (int)$zahl2;
        $ergebnis $zahl1+$zahl2
        du solltest das ganze in Zahlen "formatieren" ...
        PHP-Code:
        if ( $humans >= ) {
           
        war ();

        Kommentar


        • #5
          rand() liefert doch bereits einen Integer zurück. Eine Typumwandlung sollte daher nicht notwendig sein.
          http://hallophp.de

          Kommentar


          • #6
            Ich bezweifle ernsthaft, dass der gepostetet Code nicht funktionieren soll.
            error_reporting an?
            SQL-Query ausgeben?!
            "My software never has bugs, it just develops random features."
            "Real programmers don't comment. If it was hard to write, it should be hard to understand!"

            Kommentar


            • #7
              Zitat von Asipak Beitrag anzeigen
              rand() liefert doch bereits einen Integer zurück. Eine Typumwandlung sollte daher nicht notwendig sein.
              dann verstehe ich nicht, warum er dann die zwei "Zahlen" wie Stings behandelt ...?
              oder hab ich da an wurm in meiner denkweise ..?
              weil wenn 1 + 7 = 17 ergibt ...
              PHP-Code:
              if ( $humans >= ) {
                 
              war ();

              Kommentar


              • #8
                '$zahl1' ist falsch, weil Variablenwerte zwischen einzelnen Hochkommata nicht
                eingesetzt werden.
                Letzteres stimmt zwar, trifft hier aber nicht zu. Die ' gehören zur Query, die äußeren Begrenzer (PHP) sind aber ", was hier relevant ist.
                --

                „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                --

                Kommentar


                • #9
                  Logischte Erklärung wäre, dass er einen . statt dem + bei $ergebnis genommen hat ?
                  Ansonsten wäre das echt interessant...
                  Signatur:
                  PHP-Code:
                  $s '0048656c6c6f20576f726c64';
                  while(
                  $i=substr($s=substr($s,2),0,2))echo"&#x00$i;"

                  Kommentar

                  Lädt...
                  X