tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
10
ZUGRIFFE
295
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Subwoover Subwoover ist offline Mitglied Platin
    Registriert seit
    Dec 2001
    Ort
    Wien
    Beiträge
    532
    Wie ändere ich den Datensaz in meiner Tabelle?
    Mein Script dazu sieht so aus nur funkt es leider nicht =(

    PHP-Code:

        
    echo "<form action=$PHP_SELF method=Post name=aendern>
              <input type=text name=aendername>
              <input type=text name=aenderpw>
              <input type=submit value=Ändern>
              </form>"
    ;


        if (
    $aendern) {
        
    $connect2 mysql_connect("localhost","es","es11");
        
    mysql_select_db("es",$connect2);
        
    $aendern "UPDATE test SET username = $aendername,
                                    password = 
    $aenderpw WHERE username = 'freebird'";

         } 
    Kann mir da wer helfen?
    Natürlich setz ich das WHERE username =.... auf den user den man ändern möchte mit einer variablen, aber überhaupt mal dass das prinzip funktioniert...
     

  2. #2
    Dunsti Tutorials.de Gastzugang
    setz mal ALLE Werte in Anführungszeichen:

    PHP-Code:
    $aendern "UPDATE test SET username = '$aendername', password = '$aenderpw' WHERE username = 'freebird'"
    und natürlich muss dann noch die SQL-Abfrage an die Datenbank gesendet werden:

    PHP-Code:
    mysql_query($aendern); 

    Dunsti
     

  3. #3
    Subwoover Subwoover ist offline Mitglied Platin
    Registriert seit
    Dec 2001
    Ort
    Wien
    Beiträge
    532
    Ah danke dir, funktioniert....

    also dass ich da eine Variable statt dem Username eingebe der geändert werden soll ist doch nicht so leicht, kann mir da mal wer sagen wie ich das machen könnte?

    Zuvor werden alle Usernamen mit ihrem Passwort ausgegeben in einer while schleife...
    Wie kann ich jeztz neben jeden Namen einen Link machen der zu diesem Formualr führt und als Info hinten zB '?user=freebird' dran hat... also variabel eben...
     

  4. #4
    Dunsti Tutorials.de Gastzugang
    jo, Du machst einen Link, der so aussieht:
    PHP-Code:
    echo "<a href=\"aendern.php?user=$username\">aendern</a>"
    dann hast Du in dem Script die Variable $user mit dem entsprechenden Namen drin.

    dann einfach:
    PHP-Code:
    $aendern "UPDATE test SET username = '$aendername', password = '$aenderpw' WHERE username = '$user'"
    is ganz einfach


    Dunsti
     

  5. #5
    Subwoover Subwoover ist offline Mitglied Platin
    Registriert seit
    Dec 2001
    Ort
    Wien
    Beiträge
    532
    Jo thx das wusste ich eh nur wie bekomme ich die Variable $user in den Link****?

    Wenn ich mit einer while schleife alle user wiedergebe?
     

  6. #6
    Dunsti Tutorials.de Gastzugang
    wenn Du den Link innerhalb der While-Schleife ausgibst, dann wird doch da bei jedem Link automatisch ein anderer Username reingeschrieben, weil $username bei jedem Durchlauf anders ist


    Dunsti
     

  7. #7
    Subwoover Subwoover ist offline Mitglied Platin
    Registriert seit
    Dec 2001
    Ort
    Wien
    Beiträge
    532
    ja aber die while-schleife sieht so aus:

    PHP-Code:
       while ($myrow mysql_fetch_object($result)) {
       echo 
    "<table width=100% border=1>
       <tr>
       <td width=50%><a href=\"aendern.php?user=
    $myrow->username\">$myrow->username</a></td>
       <td width=50%>
    $myrow->password</td>
       </tr>
       </table>"
    ;
       } 
    Oke das mit dem Link hab ich nur... er ändert mir die daten nicht...
    die aendern.php sieht so aus:

    PHP-Code:
    <?
        
    echo "<form action=$PHP_SELF method=Post name=aendern>
              <input type=text name=aendername>
              <input type=text name=aenderpw>
              <input type=submit value=Ändern>
              </form>"
    ;


        if (!empty(
    $aendername)) {
        
    $connect2 mysql_connect("localhost","es","es11");
        
    mysql_select_db("es",$connect2);
        
    $aendern "UPDATE test SET username = '$aendername',
                                    password = '
    $aenderpw' WHERE username = '$user'";
        
    $aaendern mysql_query($aendern);

         }
         if (
    $aendern)
         echo 
    $aaendern;
    ?>
    Und es ändert sich nix
    Aber er schreibt mir nach Klicken auf den Send-Buton eine 1 aus (****?)
    Geändert von Subwoover (16.02.02 um 22:31 Uhr)
     

  8. #8
    Dunsti Tutorials.de Gastzugang
    hmm ... bist Du sicher, daß er nix ändert ?

    daß er eine 1 schreibt liegt daran, daß in $aaendern eine 1 drin steht, und das sagt aus, daß eine Zeile geändert wurde.

    probiers mal so:

    PHP-Code:
    $connect2 mysql_connect("localhost","es","es11");
    mysql_select_db("es",$connect2);

    if (isset(
    $aendern)) {
        
    $aendern "UPDATE test SET username = '$aendername', password = '$aenderpw' WHERE username = '$user'";
        
    mysql_query($aendern);
        
    $abfrage "SELECT * FROM test WHERE username = '$user'";
        
    $result mysql_query($abfrage);
        
    $myrow mysql_fetch_object($result)
        echo 
    $myrow->username " -- " $myrow->passwort;
    }

    elseif (isset(
    $user)) {
        echo 
    "<form action=$PHP_SELF method=Post name=aendern>
                <input type=text name=aendername>
                <input type=text name=aenderpw>
                <input type=submit value=Ändern>
              </form>"
    ;
    }

    else {
        
    $abfrage "SELECT * FROM test";
        
    $result mysql_query($abfrage);
        while (
    $myrow mysql_fetch_object($result)) {
            echo 
    "<table width=100% border=1>
                    <tr>
                      <td width=50%><a href=\"aendern.php?user=
    $myrow->username\">$myrow->username</a></td>
                      <td width=50%>
    $myrow->password</td>
                    </tr>
                  </table>"
    ;
       }

    dann werden nach dem UPDATE direkt die Werte nochma ausgelesen, und ausgegeben


    hope that helpz

    Dunsti
     

  9. #9
    Subwoover Subwoover ist offline Mitglied Platin
    Registriert seit
    Dec 2001
    Ort
    Wien
    Beiträge
    532
    Wenn ich die Page aufrufe zeigt er mir eine weisse Seite an....
     

  10. #10
    Dunsti Tutorials.de Gastzugang
    dann sind noch KEINE Einträge in der Datenbank vorhanden. Eine Ausgabe erfolgt ja nur in der WHILE-Schleife, und die wird nur durchlaufen, wenn die SQL-Abfrage ein Ergebnis bringt

    oder Du hast evtl. die falsche Tabelle angegeben ?


    Dunsti
     

  11. #11
    Subwoover Subwoover ist offline Mitglied Platin
    Registriert seit
    Dec 2001
    Ort
    Wien
    Beiträge
    532
    Kann das daran liegen, dass ein Fehler im Script vorhanden ist?
    Ich glaube mein Webserver (nicht meiner) zeigt Fehlermeldungen nicht...
     

Ähnliche Themen

  1. nächster Datensatz; mdb Datenbank
    Von tobi726 im Forum Java Grundlagen
    Antworten: 2
    Letzter Beitrag: 15.12.08, 16:06
  2. Letzten Datensatz ändern.
    Von Willywaffel im Forum PHP
    Antworten: 5
    Letzter Beitrag: 25.09.07, 22:29
  3. Datensatz in DB ändern
    Von Subwoover im Forum PHP
    Antworten: 6
    Letzter Beitrag: 19.02.02, 23:36
  4. Problem mit datensatz ändern
    Von Wishmaster im Forum Relationale Datenbanksysteme
    Antworten: 2
    Letzter Beitrag: 15.02.02, 15:18
  5. Datensatz ändern
    Von TaxiDriver im Forum PHP
    Antworten: 1
    Letzter Beitrag: 31.01.02, 19:04