NOOB Frage: Variable in where clause

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

  • NOOB Frage: Variable in where clause

    Hallo,
    ich habe ein problem und zwar wollte ich in einer datenbank einen wert bei einem user ändern lassen. Nun muss ich allerdings die userid ($eid) variabel halten (die wird von einem Formularfeld der vorhergehenden seite übertragen) wenn ich die Variable allerdings in das "WHERE" Feld schreibe bekomme ich eine Fehlermeldung "tollUnknown column '$eid' in 'where clause'"
    So nochmal der code:
    PHP-Code:
            <?php     
                    
                    
    if($article[pass]!=$epass)
                    { 
                    echo 
    '<meta http-equiv="Refresh" content="0; url=denied.php">';
                    } 
                    if(
    $article[pass]==$epass)
                    {
                     echo 
    'toll';
                     
    $in 'UPDATE accounts SET eingeloggt=1,points=18 WHERE id = $eid';
                     
    $result mysql_query($in) OR die(mysql_error());
                    }
                
    ?>
    Hoffentlich könnt ihr mir schnell helfen, ich werde nämlich wahnsinnig...
    Danke im Vorraus

  • #2
    PHP-Code:
    $article[pass]   //falsch
    $article['pass'//richtig


    $in 'UPDATE accounts SET eingeloggt=1,points=18 WHERE id = $eid';  /falsch

    $in 
    "UPDATE accounts SET eingeloggt=1,points=18 WHERE id = ".$_POST['eid'].""//sollte gehen 
    Onlie Browsergame: http://www.war-of-empire.de <-- 2. Weltkrieg

    Kommentar


    • #3
      so sollte es auch gehen

      PHP-Code:
      $in "UPDATE accounts SET eingeloggt=1,points=18 WHERE id = '$eid' "
      Bei Risiken und Nebenwirkungen fragen Sie Dr.Alban

      Kommentar


      • #4
        id in der Tabellenstruktur vielleicht großgeschrieben??
        Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
        Schön - etwas Geschichte kann ja nicht schaden.
        Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

        Kommentar


        • #5
          erst einmal danke für die antworten.
          So wie es Rolandbar vorgeschlagen hat geht es, nur wüsste ich gerne was ich da genau getan habe, damit es geht ... ?

          Aber erstmal DANKE

          Kommentar


          • #6
            Original geschrieben von darktown2
            erst einmal danke für die antworten.
            So wie es Rolandbar vorgeschlagen hat geht es, nur wüsste ich gerne was ich da genau getan habe, damit es geht ... ?

            Aber erstmal DANKE
            lass Dir mal Bitte dieses in Deinem Script anzeigen
            $in = 'UPDATE accounts SET eingeloggt=1,points=18 WHERE id = $eid';

            also $in ausgeben lassen und Du wirst sehen wo der Fehler ist und
            es verstehen
            Bei Risiken und Nebenwirkungen fragen Sie Dr.Alban

            Kommentar


            • #7
              nur wüsste ich gerne was ich da genau getan habe, damit es geht ... ?
              kein problehm:

              $article[pass] ist ein array.
              um auf einen wert im array zuzugreifen muss man den wert in den Eckigen-Klamern zwischen ' setzen oder " , auser man nimmt eine variable dan nicht.

              du woltest mit $eid auf eine formulareingabe zugreifen (wäre ok wenn register_globals an ist, glaub ich, ist aber schlecht wegen sicherheit)
              normal ist aber $_POST['xxxxx']. dadurch das $_POST['xxxxx']. zwischen ". und ." gestzt ist muss PHP im string nicht extra nach wariablen durchsuchen ( nur mit den gänsefüschen ("))
              Onlie Browsergame: http://www.war-of-empire.de <-- 2. Weltkrieg

              Kommentar


              • #8
                ok, danke

                Kommentar

                Lädt...
                X