MySQL UPDATE per PHP, wie?

  • Hi Leute, ich habe es heute hinbekommen, das ich die, in die Datenbankeingetragenen, News und Gästebuch-einträge löschen kann. Also einzelne "id"s. Das klappt alles so, wie ich mir das auch vorstelle.
    Nun habe ich versucht es so hinzubekommen, das ich die einträge online mittels formular auch ändern kann. Also ich bekomme in meinem ACP die News aufgelistet und dort steht halt dann Löschen und Bearbeiten. Ich weiß nur nicht wie ich es anstellen soll, dass wenn man auf Bearbeiten klickt, sich ein "editor" öffnet (also online auf der seite ein texteingabefeld) und man den alten text dann verändern kann. Wenn man auf speichern klickt sollte natürlich nur der neue geänderte eintrag in der datenbank sein. Und das Datum sollte immernoch das alte sein. (datum vom originaleintrag).

    Kann mir jemand zeigen wie das geht?

    Also mit dem löschen das hab ich so gemacht:

    news_admin.php

    PHP
    <div class="news_box">
    <div class="news_titel_box">
    <div class="news_titel"><?=$row['titel']?> | <a class="menu_links" href="deletenews.php?action=delete&news_id=<?=$row['id']?>">Löschen</a> | <a class="menu_links" href="updatenews.php?action=update&news_id=<?=$row['id']?>">Ändern</a></div>
    <div class="news_date">Von <?=$row['autor']?> am <?php echo $datum ?> um <?php echo $zeit ?> Uhr</div>
    </div>
    <div class="news_inhalt_box">
    <div class="news_text"><?=nl2br($row['inhalt'])?></div>


    deletenews.php

    So in der Art müsste das mit dem Updaten dann wohl auch gehen oder?

    MfG Santos

    Don't follow me, I run into walls.

  • Aus action=delete ein action=update machen und den MySQL-Befehl anpassen. Wo ist dein Problem?

    Außerdem habe ich dir sowas doch schon inkl. FckEditor gebastelt!!! Man fragt sich manchmal, warum man hier manchen Leuten hilft!!! :( Kopfschüttel :(

  • Ja ich weiß das du mir das gegeben hast. aber ich hab da teilweiße echt den überblick verloren und ich wusste nicht recht wie genau ich es einbauen sollte bei meiner website.
    Danke dafür aufjedenfall!
    Ich hab schon ausprobiert das delete überall einfach mit UPDATE zu ändern aber es geht nicht. :(
    Meintest du so?

    Don't follow me, I run into walls.

  • Würdest du dir bitte mal die Update-Syntax genauer ansehen! Was du da schreibst ist kompletter Blödsinn. Auch das könntest du aus meinem Script entnehmen!

    Und wieso verzichtest du auf mysql_error bei mysql_query?

  • Ja sorry ich hab sowas noch nie gemacht. Ich kenn mich halt nicht so gut damit aus wie Leute die das schon sonst wie lange machen. Ich möchte es lernen aber ohne erklärungen zu einzelnen Schritten ist das eigentlich unmöglich. Ich kann natürlich alles übernehmen aber es bringt mir null wenn ich kein plan habe was dann was macht und wie es überhaupt funktioniert.
    Ich weiß nicht was ich alles aus deinem Script bräuchte und wie ich es wo einfügen müsste.

    Zitat

    Und wieso verzichtest du auf mysql_error bei mysql_query?


    Keine Ahnung. Wurde mir nie gesagt, war nie ein Fehler und ich weiß auch nicht für was das ist.

    Don't follow me, I run into walls.

  • Och büdde.

    Zitat

    @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR die(mysql_error());

    mysql_query("......") or die (mysql_error());

    Lerne doch bitte mal die Grundlagen und vor allem, denke doch mal mit!

    Ich weiß nicht was ich alles aus deinem Script bräuchte und wie ich es wo einfügen müsste.


    Was ist so schwer daran? Ich habe alles in einzelne Dateien gesplittet, damit man das einfacher verstehen kann. Das sind alles Grundlagen, nix kompliziertes. OK, die Sache mit dem FCKEditor, aber der Rest...

    Einmal editiert, zuletzt von bandit600 (25. August 2009 um 12:23)

  • Ja ich versteh das mit diesem Editor nämlich null... Also die Bedienung davon ist mir klar nur das einbinden und das verlinken zu dem Buttom "Bearbeiten" im News-Admin ist mir unklar.

    Don't follow me, I run into walls.

  • Puuuuhhhhh!

    <a class="menu_links" href="deletenews.php?action=delete&news_id=<?=$row['id']?>">Löschen</a>
    <a class="menu_links" href="updatenews.php?action=update&news_id=<?=$row['id']?>">Ändern</a>

    Frage an Radio Eriwan: Löschen und Editieren sind zwei unterschiedliche Scripte, welchen Sinn macht dann überhaupt action=... ???

    Und wenn du mit dem FCKEditor nicht klar kommst, dann kopiere den Teil aus meinem Script oder benutze ein einfaches Textfeld. der Unterschied zwischen Neu und ändern ist doch nur der, dass a) einmal die Daten vorher gelesen und in die Felder geschrieben werden muss und b) statt einem Insert ein Update durchgeführt werden muss.

    ABER DAS KÖNNTEST DU ALLES AUS DEM BEISPIEL ENTNEHMEN! STRENG DICH MAL MEHR AN!

  • Okay also ich brauch ja auf jedenfall den Befehl, das der Eintrag UPGEDATET werden soll. (UPDATE FROM...)
    Ich weiß aber nicht wie es mir dann in einer Textbox angezeigt werden kann zum ändern und wie ich es dann speichere :(

    Don't follow me, I run into walls.

  • Du kommst auf die Seite zum updaten und hast deine_news_id. Zu Beginn der Seite liest du mit

    SQL
    SELECT feld1,feld2,feld2,... FROM news WHERE id=deine_news_id

    die Daten von der News aus die du bearbeiten möchtest. Dann baust du ganz normal dein Formular auf und belegst die Felder vor mit den ausgelesenen Daten. In das Formular setzt du dann noch ein hidden-feld in das du die id der news schreibst, damit du auf der Folgeseite weißt welche News bearbeitet werden soll. Auf der update-Seite an die die Daten geschickt werden führst du dann den UPDATE-Befehl durch:

    SQL
    UPDATE news SET teaser=? , text=? , ..... WHERE id=deine_news_id

    "Programming today is a race between software engineers
    striving to build bigger and better idiot-proof programs,
    and the universe trying to build bigger and better idiots.
    So far, the universe is winning."
    Rick Cook

  • Santos, langsam finde ich das nur noch lächerlich. Hier nochmal editnews.php, die du auch von mir hast:

    Da hast du alles drin, was du brauchst, was willst du noch???? :( Kopfschüttel :(