tutorials.de Buch-Aktion 05/2012
Seite 1 von 3 123 LetzteLetzte
ERLEDIGT
NEIN
ANTWORTEN
42
ZUGRIFFE
2999
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von ryserstephan
    ryserstephan ryserstephan ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Ort
    Selzach
    Beiträge
    86
    Hallo zusammen ich habe ein kleinens problem, ich habe ein formular das daten aus der Mysql ausliesst in eine TextArea ich will das mann die bearbeiten erweitern kann.
    Und der vorhandene eintrag ersetzt!
    Habs fast gepackt leider wenn ich die daten geändert habe und wieder hochladen will, wird einfach nur ein ein neuer eintrag gemacht der lehr ist.
    Solle aber eben ersetzt werden.
    *PHP BUTTON GEHT NICHT*<form action="feedback.php" method="post">
    <textarea>
    <?php
    $db_dbname = 'zielvereinbarung';
    $db_user = 'root';
    $db_pw = '';
    $db_host = 'localhost';

    $tabellenname = 'daten';
    $id = $row['id'];
    $name = $row['name'];
    $C1 = $row['C1'];
    $C2 = $row['C2'];
    $C3 = $row['C3'];
    $C4 = $row['C4'];
    $C5 = $row['C5'];
    $C6 = $row['C6'];
    $C7 = $row['C7'];
    $C8 = $row['C8'];
    $C9 = $row['C9'];
    $C10 = $row['C10'];
    $C11 = $row['C11'];
    $datum = $row['datum'];

    mysql_connect($db_host, $db_user, $db_pw);
    mysql_select_db($db_dbname);

    $sql = "Select * FROM daten";
    $q = mysql_query($sql);
    $data = mysql_fetch_array($q);

    echo $data['name'];

    $sql = "Update daten SET C1= '".$C1."',
    C2= '".$C2."',
    C3= '".$C3."',
    C4= '".$C4."',
    C5= '".$C5."',
    C6= '".$C6."',
    C7= '".$C7."',
    C8= '".$C8."',
    C9= '".$C9."',
    C10= '".$C10."',
    C11= '".$C11."',
    name= '".$name."',
    datum= '".$datum."'";

    ?>

    </textarea >
    <br>
    <textarea cols="105">
    <?php
    echo $data['C1'];
    ?>
    </textarea>
    <br>
    <textarea cols="105">
    <?php
    echo $data['C2'];
    ?>
    </textarea>
    <br>
    <textarea cols="105">
    <?php
    echo $data['C3'];
    ?>
    </textarea>
    <br>
    <textarea cols="105">
    <?php
    echo $data['C4'];
    ?>
    </textarea>
    <br>
    <textarea cols="105">
    <?php
    echo $data['C5'];
    ?>
    </textarea>
    <br>
    <textarea cols="105">
    <?php
    echo $data['C6'];
    ?>
    </textarea>
    <br>
    <textarea cols="105">
    <?php
    echo $data['C7'];
    ?>
    </textarea>
    <br>
    <textarea cols="105">
    <?php
    echo $data['C8'];
    ?>
    </textarea>
    <br>
    <textarea cols="105">
    <?php
    echo $data['C9'];
    ?>
    </textarea>
    <br>
    <textarea cols="105">
    <?php
    echo $data['C10'];
    ?>
    </textarea>
    <br>
    <textarea cols="105">
    <?php
    echo $data['C11'];
    ?>
    </textarea>
    <br>
    <textarea cols="105">
    <?php
    echo $data['datum'];
    ?>
    </textarea>
    <br>
    <input type="submit">
    </form>

    Hoffentlich siet jemand mein fehler.
    Danke im foraus und ich bin dankbar für jeden TIP
     

  2. #2
    Registriert seit
    May 2007
    Ort
    Köln / Bonn
    Beiträge
    844
    Blog-Einträge
    4
    Alle Textareas haben keinen Name, es fehlt ein Form start-tag, in dem du method=post am besten einstellst. Dann alle Variablen wieder mit $_POST['feld_name'] entgegennimmt.
     
    Der Computer ist die logische Weiterentwicklung des Menschen: Intelligenz ohne Moral.

  3. #3
    Avatar von ryserstephan
    ryserstephan ryserstephan ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Ort
    Selzach
    Beiträge
    86
    Super es geht nur noch eine kleinekeit, und zwar erstellt er einfach einen neuen einrag mit den genäderten daten.Ich möchte aber das er den eintrag einfach ersetzt. Siest du da eine möglichkeit =

    Es sollte einfach den eintrag ersetzen leider erstellt es einen neuen.
    der code ist der gleiche einfach das die textArea alle einen namen haben.
     

  4. #4
    Registriert seit
    May 2007
    Ort
    Köln / Bonn
    Beiträge
    844
    Blog-Einträge
    4
    Solang da update steht wollte er keinen neuen erstellen, was dir aber unbedingt noch fehlt ist eine WHERE bedinung sonst änderst du immer alle Datensätze. Also eine ID mit in dein Formular übergeben anhand der du die einträge eindeutig identifizieren kannst. In der Query wird dann einfach WHERE `id` = $id angehangen.

    Vielleicht postest du nochmal den code der einfügt statt zu ändern. Und diesmal bitte in [ PHP ] BB Code das es leichter lesbar wird.
     
    Der Computer ist die logische Weiterentwicklung des Menschen: Intelligenz ohne Moral.

  5. #5
    Avatar von ryserstephan
    ryserstephan ryserstephan ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Ort
    Selzach
    Beiträge
    86
    sodela wie gesagt das bestehende problem ist immer noch, es wird ständig ein neuer eintrag erstellt,und nicht wie ich wollte einfach der andere über schrieben.
    Hier der code :
    PHP-Code:
    <form action="feedback.php" method="post">
    <textarea name="name" rows="1" cols="105">
    <?php

    $db_dbname 
    'zielvereinbarung'
    $db_user 'root'
    $db_pw ''
    $db_host 'localhost'

    $tabellenname 'daten'
    $id $_POST['id'];
    $name $_POST['name'];
    $C1 $_POST['C1'];
    $C2 $_POST['C2'];
    $C3 $_POST['C3'];
    $C4 $_POST['C4'];
    $C5 $_POST['C5'];
    $C6 $_POST['C6'];
    $C7 $_POST['C7'];
    $C8 $_POST['C8'];
    $C9 $_POST['C9'];
    $C10 $_POST['C10'];
    $C11 $_POST['C11'];
    $datum $_POST['datum'];

    mysql_connect($db_host$db_user$db_pw); 
    mysql_select_db($db_dbname);

    $sql = ("Select * FROM daten WHERE id ='" $_GET['id'] . "';");
    $q mysql_query($sql);
    $data mysql_fetch_array($q);

    echo 
    $data['name'];

    $sql "Update daten SET C1= '".$C1."', 
                             C2= '"
    .$C2."',  
                             C3= '"
    .$C3."',
                             C4= '"
    .$C4."',
                             C5= '"
    .$C5."',
                             C6= '"
    .$C6."',
                             C7= '"
    .$C7."',
                             C8= '"
    .$C8."',
                             C9= '"
    .$C9."',
                             C10= '"
    .$C10."',
                             C11= '"
    .$C11."',
                             name= '"
    .$name."',
                             datum= '"
    .$datum."'";
                            
                             
    ?>

    </textarea >
    <br>
    <textarea name="C1" rows="1" cols="105">
    <?php 
    echo $data['C1'];
    ?>
    </textarea>
    <br>
    <textarea name="C2" rows="1" cols="105">
    <?php 
    echo $data['C2'];
    ?>
    </textarea>
    <br>
    <textarea name="C3" rows="1" cols="105">
    <?php 
    echo $data['C3'];
    ?>
    </textarea>
    <br>
    <textarea name="C4" rows="1" cols="105">
    <?php 
    echo $data['C4'];
    ?>
    </textarea>
    <br>
    <textarea name="C5" rows="1" cols="105">
    <?php 
    echo $data['C5'];
    ?>
    </textarea>
    <br>
    <textarea name="C6" rows="1" cols="105">
    <?php 
    echo $data['C6'];
    ?>
    </textarea>
    <br>
    <textarea name="C7" rows="1" cols="105">
    <?php 
    echo $data['C7'];
    ?>
    </textarea>
    <br>
    <textarea name="C8" rows="1" cols="105">
    <?php 
    echo $data['C8'];
    ?>
    </textarea>
    <br>
    <textarea name="C9" rows="1" cols="105">
    <?php 
    echo $data['C9'];
    ?>
    </textarea>
    <br>
    <textarea name="C10" rows="1" cols="105">
    <?php 
    echo $data['C10'];
    ?>
    </textarea>
    <br>
    <textarea name="C11" rows="1" cols="105">
    <?php 
    echo $data['C11'];
    ?>
    </textarea>
    <br>
    <textarea name="datum" rows="1" cols="105">
    <?php 
    echo $data['datum'];
    ?>
    </textarea>
    <br>
    <input type="submit">
    </form>
     

  6. #6
    Registriert seit
    May 2007
    Ort
    Köln / Bonn
    Beiträge
    844
    Blog-Einträge
    4
    Minimale änderungen, in erster Linie die ID nochmal mitübergeben und als where benutzen:

    PHP-Code:
    <?php

    $db_dbname 
    'zielvereinbarung'
    $db_user 'root'
    $db_pw ''
    $db_host 'localhost'

    mysql_connect($db_host$db_user$db_pw); 
    mysql_select_db($db_dbname);

    $tabellenname 'daten'
    $id     $_POST['id'];
    $name   $_POST['name'];
    $C1     $_POST['C1'];
    $C2     $_POST['C2'];
    $C3     $_POST['C3'];
    $C4     $_POST['C4'];
    $C5     $_POST['C5'];
    $C6     $_POST['C6'];
    $C7     $_POST['C7'];
    $C8     $_POST['C8'];
    $C9     $_POST['C9'];
    $C10    $_POST['C10'];
    $C11    $_POST['C11'];
    $datum  $_POST['datum'];

    $sql "Update daten SET C1= '".$C1."', 
                             C2= '"
    .$C2."',  
                             C3= '"
    .$C3."',
                             C4= '"
    .$C4."',
                             C5= '"
    .$C5."',
                             C6= '"
    .$C6."',
                             C7= '"
    .$C7."',
                             C8= '"
    .$C8."',
                             C9= '"
    .$C9."',
                             C10= '"
    .$C10."',
                             C11= '"
    .$C11."',
                             name= '"
    .$name."',
                             datum= '"
    .$datum."'
             WHERE `id` = '
    $id' LIMIT 1";


    $sql = ("Select * FROM daten WHERE id ='" $_GET['id'] . "';");
    $q mysql_query($sql);
    $data mysql_fetch_array($q);




                            
                             
    ?>
    <form action="feedback.php" method="post">
    <input type="hidden" name="id" value="<?php echo $data['id']; ?>">
    <textarea name="name" rows="1" cols="105">
    <?php echo $data['name']; ?>
    </textarea >
    <br>
    <textarea name="C1" rows="1" cols="105">
    <?php echo $data['C1']; ?>
    </textarea>
    <br>
    <textarea name="C2" rows="1" cols="105">
    <?php  echo $data['C2']; ?>
    </textarea>
    <br>
    <textarea name="C3" rows="1" cols="105">
    <?php echo $data['C3']; ?>
    </textarea>
    <br>
    <textarea name="C4" rows="1" cols="105">
    <?php echo $data['C4']; ?>
    </textarea>
    <br>
    <textarea name="C5" rows="1" cols="105">
    <?php echo $data['C5']; ?>
    </textarea>
    <br>
    <textarea name="C6" rows="1" cols="105">
    <?php echo $data['C6']; ?>
    </textarea>
    <br>
    <textarea name="C7" rows="1" cols="105">
    <?php echo $data['C7']; ?>
    </textarea>
    <br>
    <textarea name="C8" rows="1" cols="105">
    <?php echo $data['C8']; ?>
    </textarea>
    <br>
    <textarea name="C9" rows="1" cols="105">
    <?php echo $data['C9']; ?>
    </textarea>
    <br>
    <textarea name="C10" rows="1" cols="105">
    <?php echo $data['C10']; ?>
    </textarea>
    <br>
    <textarea name="C11" rows="1" cols="105">
    <?php echo $data['C11']; ?>
    </textarea>
    <br>
    <textarea name="datum" rows="1" cols="105">
    <?php echo $data['datum']; ?>
    </textarea>
    <br>
    <input type="submit">
    </form>
     
    Der Computer ist die logische Weiterentwicklung des Menschen: Intelligenz ohne Moral.

  7. #7
    Avatar von ryserstephan
    ryserstephan ryserstephan ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Ort
    Selzach
    Beiträge
    86
    Leider speichert er jetzt gar nichts mehr, ist extrem schreg er macht einfach wieder nur lehre einträge.Gr33z
     

  8. #8
    splasch splasch ist offline Mitglied Brillant
    Registriert seit
    Jul 2004
    Beiträge
    854
    Hast du überhaupt in der Tabelle eine Spalte id?
    Las dir die Sql befehle mit echo ausgeben dann siehste was er macht.

    Und Zeig mal her wie Deine Tabellen aufbau ist.

    Mfg Splasch
    Geändert von splasch (03.09.07 um 13:42 Uhr)
     

  9. #9
    Avatar von ryserstephan
    ryserstephan ryserstephan ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Ort
    Selzach
    Beiträge
    86
    Sicher habe ich eine spalte mit id, aber irgend was mit id muss es ja schon zu tun haben da ich ja alles abgespeichert bekomme und,einfach ein neuer eintrag mit neuer id!

    PHP-Code:
                             C1'".$C1."'
                             
    C2'".$C2."',  
                             
    C3'".$C3."',
                             
    C4'".$C4."',
                             
    C5'".$C5."',
                             
    C6'".$C6."',
                             
    C7'".$C7."',
                             
    C8'".$C8."',
                             
    C9'".$C9."',
                             
    C10'".$C10."',
                             
    C11'".$C11."',
                             
    name'".$name."',
                             
    datum'".$datum."'
    So wie hier sind auch meine Tabellen .
     

  10. #10
    splasch splasch ist offline Mitglied Brillant
    Registriert seit
    Jul 2004
    Beiträge
    854
    ich würd sagen es liegt an deinem Select
    (Select * FROM daten WHERE id ='" . $_GET['id'] . "';"); )

    Von wo holt er sich die Get id wenn die Abfrage dann keine Datensatz findet ist dann auch in deinem Formular die Id="" (leer) damit würde er wieder ein update machen wobei er alles ändert wo id="" ist also eben dann keine Änderung.

    Bau besser noch eine Prüfroutine ein die Get id prüfft ob zahlen werte enthalten sind bwz ob überhaupt was drin steht.

    Mfg Splasch
     

  11. #11
    Avatar von ryserstephan
    ryserstephan ryserstephan ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Ort
    Selzach
    Beiträge
    86
    Die Daten hollt er sich ja aus der Mysql und ladet sie auch korrekt in das formular rein.dann kann ich sie um schriben und wieder abschicken.Werden dann aber einfach mit neuer id abgespeichert. der namen die einträge alles passt und ist am richtigne ort ausser die id !
     

  12. #12
    splasch splasch ist offline Mitglied Brillant
    Registriert seit
    Jul 2004
    Beiträge
    854
    Versuch mal das

    PHP-Code:

    $id     
    =Trim($_POST['id']); 
    Oft werden bei Post noch Leerzeichen angehängt was die WHERE Klausel dann nix finden läst wenn dann WHERE id='1 ' steht.

    Wenn das nicht geht dann gib den update befehl per echo aus und kopier den befehl.Dann probierste das dierekt im phpmyadmin einzugeben dann siehste worans liegt.

    Mfg Splasch
     

  13. #13
    Avatar von ryserstephan
    ryserstephan ryserstephan ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Ort
    Selzach
    Beiträge
    86
    ne das hat auch nichts gebracht !
     

  14. #14
    splasch splasch ist offline Mitglied Brillant
    Registriert seit
    Jul 2004
    Beiträge
    854
    Was kommt raus wenn du die echo ausgabe im Phpmyadmin eingibt?

    Mfg Splasch
     

  15. #15
    Avatar von ryserstephan
    ryserstephan ryserstephan ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Ort
    Selzach
    Beiträge
    86
    äm sorry ich bin neu und habe auch kein phpadmin zugang ich verwalte alles mit Heidisql. was muss ich genau mauchen um solch eine ausgabe zu erhalten !
    Gr33z und echt leute Sorry das ich euch so in anspruch nehme aber es muss doch göglich sein.
    Nochmals mein php Code :
    PHP-Code:
    <form action="feedback.php" method="post">
    <textarea name="name" rows="1" cols="105">
    <?php

    $db_dbname 
    'zielvereinbarung'
    $db_user 'root'
    $db_pw ''
    $db_host 'localhost'

    $tabellenname 'daten'
    $id =Trim($_POST['id']);  
    $name $_POST['name'];
    $C1 $_POST['C1'];
    $C2 $_POST['C2'];
    $C3 $_POST['C3'];
    $C4 $_POST['C4'];
    $C5 $_POST['C5'];
    $C6 $_POST['C6'];
    $C7 $_POST['C7'];
    $C8 $_POST['C8'];
    $C9 $_POST['C9'];
    $C10 $_POST['C10'];
    $C11 $_POST['C11'];
    $datum $_POST['datum'];

    mysql_connect($db_host$db_user$db_pw); 
    mysql_select_db($db_dbname);

    $sql = ("select * FROM daten WHERE id ='" $_GET['id'] . "';");
    $q mysql_query($sql);
    $data mysql_fetch_array($q);

    echo 
    $data['name'];

    $sql "update daten SET id= '".$id."',
                             C1= '"
    .$C1."', 
                             C2= '"
    .$C2."',  
                             C3= '"
    .$C3."',
                             C4= '"
    .$C4."',
                             C5= '"
    .$C5."',
                             C6= '"
    .$C6."',
                             C7= '"
    .$C7."',
                             C8= '"
    .$C8."',
                             C9= '"
    .$C9."',
                             C10= '"
    .$C10."',
                             C11= '"
    .$C11."',
                             name= '"
    .$name."',
                             datum= '"
    .$datum."',
                             WHERE `id` = '
    $id' LIMIT 1"



                            
                             
    ?>

    </textarea >
    <br>
    <textarea name="C1" rows="1" cols="105">
    <?php 
    echo $data['C1'];
    ?>
    </textarea>
    <br>
    <textarea name="C2" rows="1" cols="105">
    <?php 
    echo $data['C2'];
    ?>
    </textarea>
    <br>
    <textarea name="C3" rows="1" cols="105">
    <?php 
    echo $data['C3'];
    ?>
    </textarea>
    <br>
    <textarea name="C4" rows="1" cols="105">
    <?php 
    echo $data['C4'];
    ?>
    </textarea>
    <br>
    <textarea name="C5" rows="1" cols="105">
    <?php 
    echo $data['C5'];
    ?>
    </textarea>
    <br>
    <textarea name="C6" rows="1" cols="105">
    <?php 
    echo $data['C6'];
    ?>
    </textarea>
    <br>
    <textarea name="C7" rows="1" cols="105">
    <?php 
    echo $data['C7'];
    ?>
    </textarea>
    <br>
    <textarea name="C8" rows="1" cols="105">
    <?php 
    echo $data['C8'];
    ?>
    </textarea>
    <br>
    <textarea name="C9" rows="1" cols="105">
    <?php 
    echo $data['C9'];
    ?>
    </textarea>
    <br>
    <textarea name="C10" rows="1" cols="105">
    <?php 
    echo $data['C10'];
    ?>
    </textarea>
    <br>
    <textarea name="C11" rows="1" cols="105">
    <?php 
    echo $data['C11'];
    ?>
    </textarea>
    <br>
    <textarea name="datum" rows="1" cols="105">
    <?php 
    echo $data['datum'];
    ?>
    </textarea>
    <br>
    <input type="submit">
    </form>
     

Ähnliche Themen

  1. Antworten: 35
    Letzter Beitrag: 09.12.08, 12:24
  2. php formular mysql editieren
    Von ryserstephan im Forum PHP
    Antworten: 12
    Letzter Beitrag: 20.03.08, 14:17
  3. Antworten: 17
    Letzter Beitrag: 31.08.07, 13:50
  4. Antworten: 3
    Letzter Beitrag: 07.12.05, 13:14
  5. mySQL Daten editieren
    Von elmyth im Forum PHP
    Antworten: 2
    Letzter Beitrag: 13.03.05, 12:26