Php/mysql Where Id=$variable - Problem

Dieses Thema im Forum "Webmaster Hilfe / Programmierer Forum" wurde erstellt von BoZ, 19.10.2006.

  1. BoZ

    BoZ Neuer Benutzer

    Dabei seit:
    18.09.2006
    Beiträge:
    3
    Zustimmungen:
    0
    Hallo alle zusammen! :)

    Ich habe ein Problem:

    Ich habe auf einer Seite eine MySQL Tabelle aufgelistet, wo man die Daten herauslesen kann! Unten auf der Seite gibt es ein Feld, wo man die ID eingeben kann, welche bearbeitet werden soll. Diese Variable heißt "$aendern".

    Auf der nächsten Seite gelangt man auf ein Formular wo die Tabelleninhalt verändern kann. Nachdem den Inhalt eingegeben hat wir er mit...:

    Code:
    $query="UPDATE `allgemein` SET `rechnername` = '$Rechnername' WHERE `id` ='$aendern' LIMIT 1;";
    
    ...übergeben! In Betracht kommt nur der Part "WHERE `id` ='$aendern'"

    Wie schon gesagt ist meine Variable $aendern. Geb ich nun auf der ersten Seite meine ID (z.B.) 3 ein, die ich verändern will, so übergibt er sie (die 3) auch auf jeden Fall auf die zweite Seite! Das habe ich mit einem einfachen "echo '$aendern'" getestet! Wenn ich nun mein geändertes wegschicke, so leert er mir das Tabellenfeld! Eigentlich sollte er das Feld nun ändern!!!

    Sooooo! Wenn ich nun allerdings anstatt "WHERE `id` ='$aendern'" "WHERE `id` ='3'" eingebe, praktisch so:

    Code:
    $query="UPDATE `allgemein` SET `rechnername` = '$Rechnername' WHERE `id` ='3' LIMIT 1;";
    
    ...funktioniert alles so wie ich es will! Ich geb praktisch auf der zweiten Seite mein Rechnername ein, und er verändert es in Zeile 3, so wie ich es will...allerdings will ich es als variable machen.

    Ich hoffe, ich habe mein Problem klar genug rübergebracht und ihr könnt mir helfen!

    Danke schonmal im vorraus!

    Ich poste hier einmal die beiden Scripts:

    show.php

    Code:
    
    <?php
    require("mysqlconnection.inc.php");
    
    $sql = "SELECT * FROM allgemein";
    $allgemein_query = mysql_query($sql) or die("Anfrage nicht erfolgreich");
    
    ?>
    
    <table cellpadding="1" cellspacing="3" border="1">
    
    <tr>
    
    <td>ID</td>
    
    <td>Rechnername</td>
    
    <td>Hersteller</td>
    
    <td>Modelnummer</td>
    
    <td>Seriennummer</td>
    
    <td>Kaufdatum</td>
    
    <td>Patchstand Datum</td>
    
    <td>Standort</td>
    
    </tr>
    
    <?php
    
    while ($adr = mysql_fetch_array($allgemein_query)){
    
    ?>
    
    <tr>
    
    <td><?=$adr['id']?></td>
    
    <td><?=$adr['rechnername']?></td>
    
    <td><?=$adr['hersteller']?></td>
    
    <td><?=$adr['modelnummer']?></td>
    
    <td><?=$adr['seriennummer']?></td>
    
    <td><?=$adr['kaufdatum']?></td>
    
    <td><?=$adr['patchstand_satum']?></td>
    
    <td><?=$adr['standort']?></td>
    
    </tr>
    
    <?php
    }
    
    ?>
    
    </table>
    
    
    <form enctype='multipart/form-data' action='aendern.php' method='post'>
    
    [b]ID:[/b]
    <input type='text' name='aendern' size='2'>
    <input type='submit' value='bearbeiten'>
    </form>
    

    aendern.php

    Code:
    <html>
    <head>
    <title>Computerverzeichnis - Eingabe</title>
    </head>
    <body>
    <font face='arial' size=2>
    
    
    
    <form enctype='multipart/form-data'>
    <table width='50%' border=0 cellpadding="5">
    <tr><td> Rechnername</td>
    <td>
    <input type=text name='Rechnername' size=50></td></tr>
    <tr><td> Hersteller</td>
    <td>
    <input type=text name='Hersteller' size=50></td></tr>
    <tr><td> Modelnummer</td>
    <td>
    <input type=text name='Modelnummer' size=50></td></tr>
    <tr><td> Seriennummer</td>
    <td>
    <input type=text name='Seriennummer' size=50></td></tr>
    <tr><td> Kaufdatum</td>
    <td>
    <input type=text name='Kaufdatum' size=50></td></tr>
    <tr><td> Patchstand Datum</td>
    <td>
    <input type=text name='PatchstandDatum' size=50></td></tr>
    <tr><td> Standort</td>
    <td>
    <input type=text name='Standort' size=50></td></tr>
    </table>
    <input type='submit' value='Ändern'> <input type=reset value='Alles leeren'></form>
    </body>
    </html>
    
    
    <?php
    require("mysqlconnection.inc.php");
    include("global.inc.php");
    
    $errors=0;
    $error="The following errors occured while processing your form input.<ul>";
    pt_register('POST','Rechnername');
    pt_register('POST','Hersteller');
    pt_register('POST','Modelnummer');
    pt_register('POST','Seriennummer');
    pt_register('POST','Kaufdatum');
    pt_register('POST','PatchstandDatum');
    pt_register('POST','Standort');
    echo "$aendern";
    $query="UPDATE `allgemein` SET `rechnername` = '$Rechnername' WHERE `id` = '$aendern' LIMIT 1;";
    mysql_query($query);
    ?>
    
    
    
    
    <h2>Thank you!</h2>
    
    
    <table width=50%>
    <tr><td>Rechnername: </td><td> <?php echo $Rechnername; ?> </td></tr>
    <tr><td>Hersteller: </td><td> <?php echo $Hersteller; ?> </td></tr>
    <tr><td>Modelnummer: </td><td> <?php echo $Modelnummer; ?> </td></tr>
    <tr><td>Seriennummer: </td><td> <?php echo $Seriennummer; ?> </td></tr>
    <tr><td>Kaufdatum: </td><td> <?php echo $Kaufdatum; ?> </td></tr>
    <tr><td>Patchstand Datum: </td><td> <?php echo $PatchstandDatum; ?> </td></tr>
    <tr><td>Standort: </td><td> <?php echo $Standort; ?> </td></tr>
    </table>
    
    
    
    [url="show.php"]Show[/url]
    
    Wenn ich...

    Code:
    `id` = '$aendern'
    in
    Code:
    `id` = $_POST['aendern']
    ...ändere, dann kommt eine Fehlermeldung.

    Code:
    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /aendern.php on line 52
    Ändere ich
    Code:
    `id` = $_POST['aendern']
    in
    Code:
    `id` = $_POST[aendern]
    oder
    Code:
    `id` = '$_POST[aendern]'
    , ist das Ergebniss gleich wie vorher! Er bringt keine Fehlermeldung, aber er leert einfach das Feld anstatt er es bearbeitet!

    Bitte um Hilfe!

    Grüßle

    Boz
     
  2. AdMan

    schau mal hier: Windows-Wartungs-Tool. Viele Probleme lassen sich damit einfach beheben. Oftmals ist der PC dann auch schneller!
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
  3. Nico

    Nico Ehemaliges Teammitglied

    Dabei seit:
    28.10.2005
    Beiträge:
    6.675
    Zustimmungen:
    0
    Probiers mal mit


    $_REQUEST['aendern']
     
Thema: Php/mysql Where Id=$variable - Problem
Besucher kamen mit folgenden Suchen
  1. input mysql where id=var

Die Seite wird geladen...

Php/mysql Where Id=$variable - Problem - Ähnliche Themen

  1. WLan Problem

    WLan Problem: Hallo, habe ein kleines Problem mit meinem Netzwerk zu Hause. Zur Info: Internetanschluß ist nen 16.000er von ALice/O2. (Bitte nichts sagen,...
  2. Datenverlust beim schreiben, Ereignis ID 50

    Datenverlust beim schreiben, Ereignis ID 50: Folgender Fehler: Datenverlust beim Schreiben. Nicht alle Daten für Datei "\server\Ordner\Ordner wurden gespeichert. Die Daten gingen verloren....
  3. Ein Problem mit Bluetooth

    Ein Problem mit Bluetooth: Hallo, ich habe exakt das Bliuetoothmodul, das in diesem Video gezeigt ist: [MEDIA] bin aber der Meinung, dass das bereits geflasht ist, denn...
  4. Domänencontroller Problem

    Domänencontroller Problem: Bekomme neuerdings immer eine Fehlermeldung in der Ereignisanzeige angezeigt: Software_Protection_Platform_Service Lizenzerwerb-Fehlerdetails....
  5. Windows Server 2012R2 Problem

    Windows Server 2012R2 Problem: Moin, wir haben das Problem, das bei Aufforderung das Benutzerpasswort zu ändern in der Windowsumgebung, die Fehlermeldung: "Das System hat...