einfacher DB update problem

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

  • einfacher DB update problem

    Das jetzt wohl total falsch, aber ich weiß echt nicht wie das geht und nen richtiges tut gibt es nicht.
    Ich habe auch wohl das typische noob problem.
    hab halt ne <form> und will die inne DB schreiben ( in diesem fall updaten).

    mir fehlt son befehel
    if submit
    {update db}

    -da es meines wissen leider nicht soeine funktion geht muss es anders gehen nur wie. ich möchte halt die unten aufgeliste form updaten in meiner DB.



    PHP-Code:
    <?
    //updaten
    //if(isset($_POST['submit']) )
    //    {
    //        $link=mysqlconnect($db);
    //        $query=" SELECT * from users WHERE username=username and password=password";
    //        $resource=mysql_query($query,$link) or die(mysql_error());
    //        $sql = "UPDATE users SET username = '$daten[username]', Email = '".addslashes(trim($_POST['email']))."' WHERE username='$username' and password='$password'";
    //                    }
     print_r($_POST);
    if($_POST['submit'] == 'submited' )
        { 
        $anfrage = "UPDATE users SET username = '$daten[username]', WHERE username='$username' and password='$password'";
        echo mysql_error() ;
        $ergebnis = mysql_query ( $anfrage) ;
        echo mysql_error() ;
        if (!$ergebnis)
            die ( " Änderungen fehlgeschlagen".myssql_error());
        echo "Daten geändert:".mysql_affected_rows()."Datensätze geändert";
        echo mysql_error() ;
        include ("profil_edit.php");
        }    
    else {
    $link=mysqlconnect($db);
    $query="SELECT * from users WHERE username=username and password=password";
    $resource=mysql_query($query,$link) or die(mysql_error());
    if ($daten=mysql_fetch_array($resource))
    echo "hier können sie ihre daten ändern";
    echo 
    "<table width=\"500\" bgcolor=\"#FFFFFF\">
    <form method=\"POST\" action=\"$PHP_SELF\">
    <tr>
        <td width=\"500\" bgcolor=\"#FFFFFF\"><font size=\"-1\">
        <table>
        <tr>
        <td valign=\"top\"><font size=\"-1\">Username:</font></td>
        <td><input name=\"username\" type=\"text\" id=\"username\" value=\"$daten[username]\"><font size=\"-1\"></td>
    </tr>
    <tr>
        <td valign=\"top\"><font size=\"-1\">Vorname:</font></td>
        <td><input name=\"first_name\" type=\"text\" id=\"first_name\" value=\"$daten[first_name]\"><font size=\"-1\"></td>
    </tr>
    <tr>
        <td valign=\"top\"><font size=\"-1\">Nachname:</font></td>
        <td><input name=\"last_name\" type=\"text\" id=\"last_name\" value=\"$daten[last_name]\"><font size=\"-1\"></td>
    </tr>
    <tr>
        <td valign=\"top\"><font size=\"-1\">e-mailadresse:</font></td>
        <td><input name=\"email_address\" type=\"text\" id=\"email_address\" value=\"$daten[email_address]\"><font size=\"-1\"></td>
    </tr>
    <tr>
        <td valign=\"top\"><font size=\"-1\">Adresse</font></td>
        <td><input name=\"adress1\" type=\"text\" id=\"adress1\" value=\"$daten[adress1]\"><font size=\"-1\"></td>
    </tr>
    <tr>
        <td valign=\"top\"><font size=\"-1\">Geburtstag:</font></td>
        <td><input name=\"birthday\" type=\"text\" id=\"birthday\" value=\"$daten[birthday]\"><font size=\"-1\"></td>
    </tr>
    <tr>
        <td valign=\"top\"><font size=\"-1\">Telefon:</font></td>
        <td><input name=\"phone\" type=\"text\" id=\"phone\" value=\"$daten[phone]\"><font size=\"-1\"></td>
    </tr>
    <tr>
        <td valign=\"top\"><font size=\"-1\">Mobile:</font></td>
        <td><input name=\"mobile\" type=\"text\" id=\"mobile\" value=\"$daten[mobile]\"><font size=\"-1\"></td>
    </tr>
    <tr>
        <td><br><input type=\"submit\" name=\"andern\" value=\"Daten andern\">
        <input type=\"hidden\" name=\"submit\" value=\"submited\"></td>
        </form>
    </tr>
    </table>";
    }
    ?>
    Zuletzt geändert von mukraker; 19.01.2003, 13:12.
    thx Mukraker

  • #2
    Also dein Query sieht echt etwas seltsam aus. Mach mal nen echo $sql; da siehste ja, wie dein Query aussieht.

    Aber wo ist dein Problem mit der If-Sache? Da hast du doch schon was.

    Kommentar


    • #3
      Das Skript das Du gepostet hat läuft nicht einmal ansatzweise.
      Als erstes taucht sofort ein PARSE ERROR auf.
      Und wenn das nicht klappt ist jeder IF wurscht,
      denn soweit kommst Du ja erst gar nicht.
      Für die Where Bedingung brauchst Du vermutlich noch vernünftige Werte
      die für username und password einzusetzen sind.
      Ich habe ienstweilen die Varaiablen $username und $password dafür verwendet.
      PHP-Code:
      $sql "UPDATE users SET first_name = '$daten[first_name]', Email = '".addslashes(trim($_POST['email']))."' WHERE username='$username' and password='$password'"

      Kommentar


      • #4
        mhm

        k ich habe das mit dem $sql= "Update ..
        geändert, aber macht der mir immer noch den parse error in line 5
        thx Mukraker

        Kommentar


        • #5
          )

          ahh hab nur ne ) vergessen
          thx Mukraker

          Kommentar


          • #6
            weiteres prob

            ich habe die file profil_edit.php in ne andere includet
            in der profil_edit ist nen mysql update ( doch wie muss die action in der form sein die auf dieser site ist)

            <form method=\"post\" action=\"login/profil_edit.php\">

            und irgendwie schein der query falsch zu sein!

            hinterher soll ja auch noch kommen"
            echo " ihre daten wurden geändert";
            Zuletzt geändert von mukraker; 19.01.2003, 10:03.
            thx Mukraker

            Kommentar


            • #7
              bisschen undeutlich!

              Vielleicht noch mal schritt für schritt:
              Wie sieht dein Query aus? Was ist daran so schwer?
              welche hast du in welche includet? wie wird die aufgerufen?

              Fragen über fragen...

              Kommentar


              • #8
                aslo

                PHP-Code:
                <?
                //updaten
                //if(isset($_POST['submit']) )
                //    {
                //        $link=mysqlconnect($db);
                //        $query=" SELECT * from users WHERE username=username and password=password";
                //        $resource=mysql_query($query,$link) or die(mysql_error());
                //        $sql = "UPDATE users SET username = '$daten[username]', Email = '".addslashes(trim($_POST['email']))."' WHERE username='$username' and password='$password'";
                //                    }
                if($POST['submit'] == 'submited' )
                    { 
                    $anfrage = "UPDATE users SET username = '$daten[username]', WHERE username='$username' and password='$password'";
                    $ergebnis = mysql_query ( $anfrage) ;
                    if (!$ergebnis)
                        die ( " Änderungen fehlgeschlagen".myssql_error());
                    echo "Daten geändert:".mysql_affected_rows()."Datensätze geändert";
                    }    
                else {
                $link=mysqlconnect($db);
                $query="SELECT * from users WHERE username=username and password=password";
                $resource=mysql_query($query,$link) or die(mysql_error());
                if ($daten=mysql_fetch_array($resource))
                echo "hier können sie ihre daten ändern";
                echo 
                "<table width=\"500\" bgcolor=\"#FFFFFF\">
                <form method=\"POST\" action=\"$PHP_SELF\">
                <tr>
                    <td width=\"500\" bgcolor=\"#FFFFFF\"><font size=\"-1\">
                    <table>
                    <tr>
                    <td valign=\"top\"><font size=\"-1\">Username:</font></td>
                    <td><input name=\"username\" type=\"text\" id=\"username\" value=\"$daten[username]\"><font size=\"-1\"></td>
                </tr>
                <tr>
                    <td valign=\"top\"><font size=\"-1\">Vorname:</font></td>
                    <td><input name=\"first_name\" type=\"text\" id=\"first_name\" value=\"$daten[first_name]\"><font size=\"-1\"></td>
                </tr>
                <tr>
                    <td valign=\"top\"><font size=\"-1\">Nachname:</font></td>
                    <td><input name=\"last_name\" type=\"text\" id=\"last_name\" value=\"$daten[last_name]\"><font size=\"-1\"></td>
                </tr>
                <tr>
                    <td valign=\"top\"><font size=\"-1\">e-mailadresse:</font></td>
                    <td><input name=\"email_address\" type=\"text\" id=\"email_address\" value=\"$daten[email_address]\"><font size=\"-1\"></td>
                </tr>
                <tr>
                    <td valign=\"top\"><font size=\"-1\">Adresse</font></td>
                    <td><input name=\"adress1\" type=\"text\" id=\"adress1\" value=\"$daten[adress1]\"><font size=\"-1\"></td>
                </tr>
                <tr>
                    <td valign=\"top\"><font size=\"-1\">Geburtstag:</font></td>
                    <td><input name=\"birthday\" type=\"text\" id=\"birthday\" value=\"$daten[birthday]\"><font size=\"-1\"></td>
                </tr>
                <tr>
                    <td valign=\"top\"><font size=\"-1\">Telefon:</font></td>
                    <td><input name=\"phone\" type=\"text\" id=\"phone\" value=\"$daten[phone]\"><font size=\"-1\"></td>
                </tr>
                <tr>
                    <td valign=\"top\"><font size=\"-1\">Mobile:</font></td>
                    <td><input name=\"mobile\" type=\"text\" id=\"mobile\" value=\"$daten[mobile]\"><font size=\"-1\"></td>
                </tr>
                <tr>
                    <td><br><input type=\"submit\" name=\"andern\" value=\"Daten andern\">
                    <input type=\"hidden\" name=\"submit\" value=\"submited\"></td>
                    </form>
                </tr>

                </table>";
                }
                mysqlclose($link);
                ?>
                Problem ist einfach nur : der macht das Update nicht!!
                mysql verbindung steht aber!! da dieses scrip includet wird! ( sons würde er mit ja auch nicht die textfelder füllen!!)
                thx Mukraker

                Kommentar


                • #9
                  Sieht auch noch nicht Richtig aus:

                  mach mal nen echo mysql_error() direkt hinter den ausfürhen des Querys und du hast immer noch nicht gesagt, wie der Query in echt aussieht!!!

                  Kommentar


                  • #10
                    doh

                    habe dzwar nun echo mysql_error() in der if drin,
                    aber da kommt nix!

                    liegt wohl daran das die garnicht ausgeführt wird!!

                    weiter query habe ich nicht tobias!!

                    warum kommt ne leer site wenn ich auf submit drücke ?

                    es soll die selber nochmal kommen, oder evtl ne andere!!
                    müsste doch am ende der if einfach nen include kommen, aber da if ja gar nicht erst ausgeführt wird geht das ja im mom auch noch nicht!
                    thx Mukraker

                    Kommentar


                    • #11
                      Tu doch mal was dir gesagt wird!!!

                      PHP-Code:

                          
                      $anfrage "UPDATE users SET username = '$daten[username]', WHERE username='$username' and password='$password'";
                          
                      $ergebnis mysql_query $anfrage) ;
                          [
                      B]echo "1)".$anfrage."2)".$mysql_error;[/B]
                          if (!
                      $ergebnis

                      Kommentar


                      • #12
                        achja!! ganz oben ist nun wieder das aktuelle script!
                        thx Mukraker

                        Kommentar


                        • #13
                          PHP-Code:
                          if($_POST['submit'] == 'submited' )
                              { 
                              
                          $anfrage "UPDATE users SET username = '$daten[username]', WHERE username='$username' and password='$password'";
                              echo 
                          mysql_error() ; // <<-- Schwachsinn!!!!
                              
                          $ergebnis mysql_query $anfrage) ;
                              echo 
                          mysql_error() ; // <<-- Hier soll die Dicke Zeile hin, die ich gepostet habe!
                              
                          if (!$ergebnis)
                                  die ( 
                          " Änderungen fehlgeschlagen".myssql_error());
                              echo 
                          "Daten geändert:".mysql_affected_rows()."Datensätze geändert";
                              echo 
                          mysql_error() ;
                              include (
                          "profil_edit.php");
                              } 

                          Kommentar


                          • #14
                            aso meinste das.
                            habs eingebaut. aber er kann mir doch gar nichts anzeigen!!
                            die if schleife wird doch nie ausgeführt!!! ( das ja mein problem)

                            nochmal der code:
                            PHP-Code:
                            <?
                            //updaten
                            //if(isset($_POST['submit']) )
                            //    {
                            //        $link=mysqlconnect($db);
                            //        $query=" SELECT * from users WHERE username=username and password=password";
                            //        $resource=mysql_query($query,$link) or die(mysql_error());
                            //        $sql = "UPDATE users SET username = '$daten[username]', Email = '".addslashes(trim($_POST['email']))."' WHERE username='$username' and password='$password'";
                            //                    }
                            session_start();
                            $link=mysqlconnect($db);
                            $query="SELECT * from users WHERE username='$first_name'";
                            $resource=mysql_query($query,$link) or die(mysql_error());
                             
                            if(($_POST['submit'] == 'submited' ))
                                { 
                                $anfrage = "UPDATE users SET username = '$daten[username]', WHERE username='$username' and password='$password'";
                                $ergebnis = mysql_query ( $anfrage) ;
                                echo "[B]1)".$anfrage."2)".$mysql_error."[/B]";
                                   if (!$ergebnis)
                                    die ( " Änderungen fehlgeschlagen".myssql_error());
                                echo "Daten geändert:".mysql_affected_rows()."Datensätze geändert";
                                echo mysql_error() ;
                                include ("profil_edit.php");
                                }    
                            else {
                            $link=mysqlconnect($db);
                            $query="SELECT * from users WHERE username='$first_name'";
                            $resource=mysql_query($query,$link) or die(mysql_error());
                            if ($daten=mysql_fetch_array($resource))
                            echo "hier können sie ihre daten ändern";
                            echo 
                            "<table width=\"500\" bgcolor=\"#FFFFFF\">
                            <form method=\"POST\" action=\"$PHP_SELF\">
                            <tr>
                                <td width=\"500\" bgcolor=\"#FFFFFF\"><font size=\"-1\">
                                <table>
                                <tr>
                                <td valign=\"top\"><font size=\"-1\">Username:</font></td>
                                <td><input name=\"username\" type=\"text\" id=\"username\" value=\"$daten[username]\"><font size=\"-1\"></td>
                            </tr>
                            <tr>
                                <td valign=\"top\"><font size=\"-1\">Vorname:</font></td>
                                <td><input name=\"first_name\" type=\"text\" id=\"first_name\" value=\"$daten[first_name]\"><font size=\"-1\"></td>
                            </tr>
                            <tr>
                                <td valign=\"top\"><font size=\"-1\">Nachname:</font></td>
                                <td><input name=\"last_name\" type=\"text\" id=\"last_name\" value=\"$daten[last_name]\"><font size=\"-1\"></td>
                            </tr>
                            <tr>
                                <td valign=\"top\"><font size=\"-1\">e-mailadresse:</font></td>
                                <td><input name=\"email_address\" type=\"text\" id=\"email_address\" value=\"$daten[email_address]\"><font size=\"-1\"></td>
                            </tr>
                            <tr>
                                <td valign=\"top\"><font size=\"-1\">Adresse</font></td>
                                <td><input name=\"adress1\" type=\"text\" id=\"adress1\" value=\"$daten[adress1]\"><font size=\"-1\"></td>
                            </tr>
                            <tr>
                                <td valign=\"top\"><font size=\"-1\">Geburtstag:</font></td>
                                <td><input name=\"birthday\" type=\"text\" id=\"birthday\" value=\"$daten[birthday]\"><font size=\"-1\"></td>
                            </tr>
                            <tr>
                                <td valign=\"top\"><font size=\"-1\">Telefon:</font></td>
                                <td><input name=\"phone\" type=\"text\" id=\"phone\" value=\"$daten[phone]\"><font size=\"-1\"></td>
                            </tr>
                            <tr>
                                <td valign=\"top\"><font size=\"-1\">Mobile:</font></td>
                                <td><input name=\"mobile\" type=\"text\" id=\"mobile\" value=\"$daten[mobile]\"><font size=\"-1\"></td>
                            </tr>
                            <tr>
                                <td><br><input type=\"submit\" name=\"andern\" value=\"Daten andern\">
                                <input type=\"hidden\" name=\"submit\" value=\"submited\"></td>
                                </form>
                            </tr>
                            </table>";
                            }
                            ?>
                            Zuletzt geändert von mukraker; 19.01.2003, 15:49.
                            thx Mukraker

                            Kommentar


                            • #15
                              Was? die if($_POST bla) wird nicht als True gewertet, obwohl du was übergeben hast? Warum hast du da Doppelte Klammern? (())???

                              Kommentar

                              Lädt...
                              X