SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 27.04.2002, 13:26:44
Scope Scope ist offline
Anfänger
 
Registriert seit: Apr 2002
Ort: Deutschland
Alter: 40
Beiträge: 6
Einen bestimten Datensatz löschen?

Hi, ich weiss nicht ob ich das richtige Forum erwischt habe, aber ich versuche es hier mal...

Es geht darum einen Datensatz von vielen aus einer DB zu löschen? Am liebsten würde ich das mit einem normalen link machen.
Mit Zitat antworten
  #2  
Alt 27.04.2002, 14:22:38
ingo ingo ist offline
Junior Member
 
Registriert seit: Apr 2002
Beiträge: 248
du hast einen query, der in einer while schleife ausgewertet wird und den link generiert.

PHP-Code:
/* db connect muss hier rein */
...
...
/* db connect ende */

$ergebnis=mysql_query("SELECT id FROM tabelle") or die("Fehler");

while(
$row=mysql_fetch_array($ergebnis))

{

$id=$row["id"];

echo 
"$id: <a href="loeschen.php?id=$id">loeschen<br>";


die datei loeschen.php sieht dann folgendermaßen aus:

PHP-Code:
if($id)

{

/* db connect muss hier rein */
...
...
/* db connect ende */

mysql_query("DELETE * FROM tabelle WHERE id=$id") or die("Fehler beim Löschen");

echo 
"Datensatz wurde geloescht!";

}

//wenn die datei ohne ?id= aufgerufen wurde.
else

{

echo 
"Geben Sie die id des Datensatzes an, der geloescht werden soll!";


würd ich aber sehr unter verschluss halten sowas. oder mit passwortschutz arbeiten....

lg, ingo
Mit Zitat antworten
  #3  
Alt 27.04.2002, 15:09:55
Progman Progman ist offline
Member
 
Registriert seit: Apr 2002
Beiträge: 821
Progman eine Nachricht über ICQ schicken
abgesehen davon das es
mysql_query("DELETE FROM*tabelle*WHERE*id=$id")*or*die("Fehler beim Löschen");
und nicht
mysql_query("DELETE * FROM*tabelle*WHERE*id=$id")*or die("Fehler beim Löschen");
heißen muss ;)
Mit Zitat antworten
  #4  
Alt 28.04.2002, 04:47:25
Scope Scope ist offline
Anfänger
 
Registriert seit: Apr 2002
Ort: Deutschland
Alter: 40
Beiträge: 6
Ich weiss das es funktionieren kann, aber anscheinend peile ich da was nicht :( (sorry, bin erst seit 3 Monaten im Internet!)

Ich füge mal hier beide Sources ein....

guestbook.php:

<?php
$host="...";
$admin="...";
$password="...";

$db=mysql_connect($host,$admin,$password);
mysql_select_db("...");
$befehl="SELECT * FROM guestbook ORDER BY id DESC";
$result=mysql_query($befehl,$db);
$anzahl = mysql_num_rows($result);

$ergebnis=mysql_query("SELECT id FROM guestbook") or die("Fehler");

while($row=mysql_fetch_array($ergebnis))

{

$id=$row["id"];

?>
<DIV ID="BODY">
<TABLE border="0" cellpadding="0" cellspacing="5" style="border-collapse: collapse" bordercolor="#111111" width="100%">
<TR><TD><FONT ID="HOME">Total Entrys: <? echo "$anzahl"; ?></FONT></TD><TD>&nbsp;</TD></TR>
</TABLE>
<?php
while($field = mysql_fetch_array($result))
{
?>

<table border="0" cellpadding="0" cellspacing="5" style="border-collapse: collapse" bordercolor="#000000" width="100%">
<tr><td width="100%"><font id="HOME"><?php echo "$id: <a href="guestbookloeschen.php?id=$id">Eintrag löschen</a>"; ?> | <b><a href="mailto:<?php echo($field["email"]); ?>"><?php echo($field["name"]); ?></a></b> schrieb am <b><?php echo($field["datum"]); ?></b> - <a href="http://<?php echo($field["www"]); ?>" target="_blank"><?php echo($field["www"]); ?></a></font></td></tr>
</table>
<?
}
?>



guestbookloeschen.php

<?php

if($id)

{

$host="...";
$admin="...";
$password="...";

$db=mysql_connect($host,$admin,$password);
mysql_select_db("...");

mysql_query("DELETE * FROM con_guestbook WHERE id=$id") or die("Fehler beim Löschen");

include('index.php?do=guestbook&title=Guestbook');

}

//wenn die datei ohne ?id= aufgerufen wurde.
else

{

echo "Geben Sie die id des Datensatzes an, der geloescht werden soll!";

}
?>
Mit Zitat antworten
  #5  
Alt 28.04.2002, 13:16:43
Progman Progman ist offline
Member
 
Registriert seit: Apr 2002
Beiträge: 821
Progman eine Nachricht über ICQ schicken
> include('index.php?do=guestbook&title=Guestbook');
so ein include(); geht nicht
http://php4.globe.de/manual/en/function.include.php (Beispiel 11-5)

> mysql_query("DELETE * FROM con_guestbook WHERE id=$id") or die("Fehler beim Löschen");
mach das * zwischen DELETE und FROM weg

und mach ganz oben in deinen Scripten ein error_reporting(E_ALL); rein
Mit Zitat antworten
  #6  
Alt 28.04.2002, 14:54:48
Scope Scope ist offline
Anfänger
 
Registriert seit: Apr 2002
Ort: Deutschland
Alter: 40
Beiträge: 6
er gibt mir ein fehler in der guestbook.php on line 16 aus

Line 16:

PHP-Code:
while($row=mysql_fetch_array($ergebnis))

{   
// 16. Zeile

$id=$row["id"];

?> 

Ja, ich weiss, Peanuts für euch! ;)~
Jeder hat mal angefangen, oder?

Geändert von Scope (28.04.2002 um 14:58:35 Uhr)
Mit Zitat antworten
  #7  
Alt 28.04.2002, 15:52:50
ingo ingo ist offline
Junior Member
 
Registriert seit: Apr 2002
Beiträge: 248
while zu

dir fehlt nach dem zweiten while noch eine geschwungene klammer }

und statt
PHP-Code:

gehört ein { gesetzt.

was ich auch noch machen würde:

die <table>-tags würd ich außerhalb der while schleife geben, und nur jeweils eine row (<tr>) für jeden datensatz machen.

also z.b.

PHP-Code:
echo "<table>
<tr>
<td>id</td>
<td>loeschen</td>
</tr>"
;

while(......(
$ergebnis))

{

$id=$row["id"];

echo 
"<tr>
<td>$id</td>
<td><a href="
loeschen.php?id=$id"></td>
</tr>"
;

}

echo 
"</table>"
ist zwar nicht übermäßig wichtig, aber einfach schöner, einfacher und übersichtlicher.

lg, ingo

Geändert von ingo (28.04.2002 um 15:59:58 Uhr)
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:31:33 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt