Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Hope Mitglied
Angemeldet: 16.08.2004 Beiträge: 80 Wohnort: Mainz Interessen: I-Net Radio , wc3, desgin
|
Verfasst am: 18.07.2005, 11:20 Titel:
Newscript Edit/delete Funktion |
|
|
|
|
Hi!
also im moment lerne ich php
und hab mal angefangen ein newscript zu schreiben... nun habe ich aber ein problem mit der Edit/Delete funktion.
und zwar folgendes, also mein newscript benutzt mysql.
Nun habe ich folgendes problem... wenn ich auf delete klicke dann importiert der nie di ID von der news..sondern gibt ein leeres Textfeld aus... zum besseren verständis hier mal die relevanten codeschnipsel mit beschreibung
Das hier zeigt alle news und gibt die Optionen Delete/Edit
Code: | <?php
include('db.php');
$q = mysql_query("SELECT * FROM $table ORDER BY id, date DESC");
echo "<table with='100%' cellspacing='2'>";
while($r=mysql_fetch_array($q)){
$id = $r["id"];
$title = $r["title"];
echo "<tr><td><b>$title - options: <a href=\"edit.php?id=$id\" target=\"_blank\">Edit post</a> | <a href=\"delete.php?id=$id\" target=\"_blank\">Delete Post</a></td></tr>";
}
echo "</table>";
mysql_close($cnx);
?>
|
wenn man auf edit klickt kiommt man weiter zu edit.php
hier
Code: | <?php
include('db.php');
$id = $_GET['id'];
$q = mysql_query("SELECT * FROM $table WHERE id='$id'");
$r = mysql_fetch_array($q);
$news = $r["news"];
echo "<form action=\"editprocess.php?id=$id\" method=\"post\">
<textarea rows=15 cols=30 id=\"news\" name=\"news\">$news</textarea><input type=\"submit\" id=\"submit\"></form>";
?>
<?php
include('db.php');
$news = $_POST['news'];
$id = $_GET['id'];
mysql_query("UPDATE $table SET news='$news' WHERE id='id'");
?>
|
aber in der Textarea steht nix drin und der Link in der url zeile vom browser sieht so aus
keine id drinne
die gleiche geschichte mit delete...hier der code
Code: | <?php
include('db.php');
$id = $_GET['id'];
if(!isset($id)){
echo "No id found!";
}
else{
mysql_query("DELETE FROM news WHERE id='$id'") or die("Could not delete news post");
}
?>
|
Ich hoffe ich konnt euch mein problem schildern....
Wäre nice wenn ihr mal den Code checken könntet...
Grüße[/code] |
|
Nach oben |
|
|
Yada Mitglied
Angemeldet: 08.06.2004 Beiträge: 267
Interessen: zuviel
|
Verfasst am: 18.07.2005, 12:07 Titel:
|
|
|
|
|
Wie soll da auch ne ID drinne stehen, wenn du etwas aus $table holst, wobei $table gar nich definiert ist? -> Ersetz Table ma durch `news`, und gleich daneben dann
... WHERE `id` = '".$_GET['id']."'
ist einfach schöner!
Du musst bei PHP auch nich alles in Variabln speichern, braucht nur unnötig Platz.
btw, zum Thema Codechecken:
Fang mal an "schön" zu coden, also nich 'SELECT * FROM $table' sondern wenn schon 'SELECT * FROM `".$table."`', und z.B. bei Ausgaben:
echo "<tr><td><b>".$title." - options:[..]";
Btw ist $r ne Abkürzung für $row? Das ist relativ egal, mich interessierts nur.
regards, me |
|
Nach oben |
|
|
Hope Mitglied
Angemeldet: 16.08.2004 Beiträge: 80 Wohnort: Mainz Interessen: I-Net Radio , wc3, desgin
|
Verfasst am: 18.07.2005, 13:41 Titel:
|
|
|
|
|
danke für die Tipps
ich werds testen
soll id sql querry jetzt so aussehen?
Code: | mysql_query('SELECT * FROM `news` WHERE `id` = '".$_GET['id']."'); |
wie muss ich das dann bei delete.php ändern? |
|
Nach oben |
|
|
Yada Mitglied
Angemeldet: 08.06.2004 Beiträge: 267
Interessen: zuviel
|
Verfasst am: 18.07.2005, 15:08 Titel:
|
|
|
|
|
Denken:
mysql_query("DELETE * FROM `news` WHERE `id` = '".$_GET['news_id']."'"); |
|
Nach oben |
|
|
Hope Mitglied
Angemeldet: 16.08.2004 Beiträge: 80 Wohnort: Mainz Interessen: I-Net Radio , wc3, desgin
|
Verfasst am: 18.07.2005, 15:19 Titel:
|
|
|
|
|
ja das ist klar
aber ich mein das problem leigt ja eher da das er die ID net importieren konnte... aber um
Code: | mysql_query('SELECT * FROM `news` WHERE `id` = '".$_GET['id']."'); |
auszuführen muss er ja erstmal ne Id haben aber die bekommt er ja durch
nicht, deswegen frage ich nochmal.
verstehste was ich mein?
oder leig ich gerade falsch ? |
|
Nach oben |
|
|
Fabs Mitglied
Angemeldet: 17.04.2004 Beiträge: 475 Wohnort: Viersen Interessen: Webdesign
|
Verfasst am: 18.07.2005, 16:57 Titel:
|
|
|
|
|
$id = $_GET['id'];
Das kannst du die ersparen weil du dir die is direkt holst und nicht erst in eine variable speicherst.
mysql_query("DELETE * FROM `news` WHERE `id` = '".$_GET['news_id']."'");
Du siehst ja das er die ID hinten holt |
|
Nach oben |
|
|
Hope Mitglied
Angemeldet: 16.08.2004 Beiträge: 80 Wohnort: Mainz Interessen: I-Net Radio , wc3, desgin
|
Verfasst am: 19.07.2005, 08:06 Titel:
|
|
|
|
|
OK danke
also habe ich das richtig verstanden:
$id = $_GET['id']; löschen das unten reicht völlig aus?
ich dachte halt nur weil
$id = $_GET['id']; ja die News in meine Textarea importieren soll
werds testen danke! |
|
Nach oben |
|
|
L-rac Mitglied
Angemeldet: 22.02.2005 Beiträge: 152
|
Verfasst am: 20.07.2005, 00:43 Titel:
|
|
|
|
|
im portiert lediglich die id der besagten news und speichert diese in $id
... ich versuch es selbst zu lernen ... hab gerad die editfunktion fürs referenz script geschrieben ^^ |
|
Nach oben |
|
|
Hope Mitglied
Angemeldet: 16.08.2004 Beiträge: 80 Wohnort: Mainz Interessen: I-Net Radio , wc3, desgin
|
Verfasst am: 20.07.2005, 07:03 Titel:
|
|
|
|
|
stimmt eigendlich
danke |
|
Nach oben |
|
|
vercci Mitglied
Angemeldet: 10.04.2019 Beiträge: 436162
|
|
Nach oben |
|
|
vercci Mitglied
Angemeldet: 10.04.2019 Beiträge: 436162
|
|
Nach oben |
|
|
vercci Mitglied
Angemeldet: 10.04.2019 Beiträge: 436162
|
|
Nach oben |
|
|
vercci Mitglied
Angemeldet: 10.04.2019 Beiträge: 436162
|
|
Nach oben |
|
|
vercci Mitglied
Angemeldet: 10.04.2019 Beiträge: 436162
|
|
Nach oben |
|
|
vercci Mitglied
Angemeldet: 10.04.2019 Beiträge: 436162
|
|
Nach oben |
|
|
|