Mysql Datensätze bearbeiten funktioniert nicht

  • Mysql Datensätze bearbeiten funktioniert nicht

    Hallo,

    habe eine Datenbank, eine Tabelle, und darin was reingeschrieben.
    reinschreiben funktioniert, aber das bearbeiten nicht
    das ganze soll ein news-system werden.

    index.php (hier kann man news löschen, bearbeiten)

    Quellcode

    1. <?php
    2. $connect = @mysql_connect("localhost","XXXX","XXXX");
    3. if (!$connect) {
    4. echo "Keine Verbindung möglich!\n";
    5. exit;
    6. }
    7. $abfrage = "SELECT * FROM dsc_news LIMIT 10";
    8. $erg = mysql_db_query("devil",$abfrage,$connect);
    9. echo '<table>';
    10. while ($row = mysql_fetch_array($erg, MYSQL_ASSOC)) {
    11. echo '<tr><td>'.$row['name']."</td>";
    12. echo '<td>'.date("d.m.Y H:i:s", $row['published'])."</td>";
    13. echo '<td>'.$row['shortteaser']."</td>";
    14. echo '<td>'.$row['teaser']."</td>";
    15. echo '<td>'.$row['text']."</td><td><a href='update.php?id=".$row['id']."'>bearbeiten</a></td><td><a href='delete.php?id=".$row['id']."'>löschen</a></td></tr>";
    16. }
    17. echo '</table>';
    18. ?>
    19. <br><br><br>
    20. <?php
    21. $count = mysql_query('SELECT COUNT(*) FROM dsc_news');
    22. echo $count;
    23. ?>
    Alles anzeigen

    in der index kann ich die geschriebenen news sehen.
    kommen wir zur update.php(news bearbeiten):


    Quellcode

    1. <?php
    2. $connect = @mysql_connect("localhost","XXXX","XXXX");
    3. if (!$connect) {
    4. echo "Keine Verbindung möglich!\n";
    5. exit;
    6. }
    7. $id = $_GET['id'];
    8. if(!isset($_REQUEST['edit'])) {
    9. $abfrage = "SELECT * FROM dsc_news WHERE id = $id";
    10. $erg = mysql_db_query("devil",$abfrage,$connect);
    11. while ($row = mysql_fetch_array($erg, MYSQL_ASSOC)) {
    12. $name = $row['name'];
    13. $shortteaser = $row['shortteaser'];
    14. $teaser = $row['teaser'];
    15. $text = $row['text'];
    16. }
    17. echo "<form method='post' action='update.php?id=<?PHP echo $id'><table>
    18. <tr><td>Titel:</td> <td><input type='text' name='name' value='$name'></td></tr>
    19. <tr><td> Kurze Einleitung:</td><td><input type='text' name='shortteaser' value='$shortteaser' ></td></tr>
    20. <tr><td> Einleitung:</td><td><input type='text' name='teaser' value='$teaser'></td></tr>
    21. <tr><td>News-text: </td><td><input type='text' name='text' value='$text'></td></tr>
    22. <tr><td><input type='submit' name='submit' value=' submit '></td></tr>
    23. </table></form>";
    24. } else {
    25. $abfrage = "UPDATE dsc_news SET name='$name',shortteaser='$shortteaser',teaser='$teaser',text='$text' WHERE id = $id";
    26. $erg = mysql_db_query("devil",$abfrage,$connect);
    27. }
    28. ?>
    Alles anzeigen


    so, dass problem ist hierbei jetzt, dass ich zwar die news sehe, auch auf submit drücken kann, aber gespeichert wird im enteffekt nichts. also nicht das was man neu eingegeben hat, bzw korrigiert hat.

    kann mir da jemand bitte schnellstmöglich weiterhelfen?
    habe es damit sehr eilig.
    ich bedanke mich im voraus!


    coca
  • You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '

    Sie haben einen Fehler in Ihrer SQL Syntax; überprüfen Sie das Handbuch, das Ihrer MySQL Server-Version für die richtige Syntax entspricht, um nahe zu verwenden


    habe es übersetzt, was heisst das jetzt genau? also hat das was mit der mysql-version zu tun?
  • nein d0nUt, ich ignoriere dich nicht, hatte dir wegen else ja ne frage gestellt was du meintest..
    error reporting hätte ichg eschrieben, wenn er was gesagt hätte. hat er aber nicht^^

    habe das problem jetzt selbst gelöst.
    waren ein par kleinere fehler drin

    Quellcode

    1. echo "<form method='POST' action='update.php?id=<?PHP echo $id'><table>


    zB hier nicht grad sinnvoll ein echo in ein echo zu schreiben^^

    es war auch
    2x $abfrage
    und
    2x $erg vorhanden, habe ich jeweilös die 2. auf $abfrage2 und $erg2 geändert.


    Quellcode

    1. if(!isset($_REQUEST['edit'])) {


    geänderrt auf

    Quellcode

    1. if(!isset($_POST['edit'])) {


    vor

    Quellcode

    1. $abfrage = "UPDATE dsc_news SET name='$name',shortteaser='$shortteaser',teaser='$teaser',text='$text' WHERE id = $id";
    2. $erg = mysql_db_query("devil",$abfrage,$connect);


    habe ich

    Quellcode

    1. $name = addslashes(stripslashes( htmlentities($_POST['name']) ));
    2. $shortteaser = addslashes(stripslashes( htmlentities($_POST['shortteaser']) ));
    3. $teaser = addslashes(stripslashes( htmlentities($_POST['teaser']) ));
    4. $text = addslashes(stripslashes( nl2br(htmlentities($_POST['text'])) ));


    gemacht, als letztes

    Quellcode

    1. $erg2 = mysql_db_query("devil",$abfrage2,$connect);
    2. statt
    3. $erg2 = mysql_db_query("devil",$abfrage,$connect);


    naja dann geht auch alles wunderbar=)


    trotzdem danke für die hilfe

    gruß
    coca