php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.05.2005, 11:45  
Erfahrener Benutzer
 
Registriert seit: 07.04.2005
Beiträge: 184
LA-Finest
Standard Problem bei Delete from ... Script

Hi,

hab hier ein script, dass wenn es aufgerufen wird einen gewissen datensatz löscht! (ID=1|Hans|löschen) o sieht meine "übersicht" aus und wenn ich jetzt auf löschen drücke, soll er mir diesen Datensatz löschen!

soweit bin ich, aber ich komm nun nicht mehr weiter:

PHP-Code:
<?php
include_once 'config.inc.php';

$db mysql_connect($_config['host'], $_config['user'], $_config['password']);

mysql_select_db($_config['database']);

$sql "DELETE FROM newssystem WHERE ID='$row[4]' Limit 1";
$result mysql_query($sql) or die(mysql_error().'
Query: '
.$sql);

while(
$row mysql_fetch_row($result))
{
    echo
"eintrag erfolgreich gelöscht";
}

echo 
"<a href=uebersicht.php'>zurück zur übersicht</a>";

mysql_close($db);

?>
habe es so aufgebaut, aber es funktioniert nicht!

könnt ihr euch des mal angucken, wäre nett!

gruß la-finest
__________________
Eine Programmiersprache kann man nicht perfekt beherrschen,
nur gut.
Ansonsten hätte man sie erfunden!

www.bazubi.com/forum --> allgem. IT-Forum
LA-Finest ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 27.05.2005, 11:53  
Gast
 
Beiträge: n/a
Standard

Was gibt
PHP-Code:
<?php
ini_set
('display_errors'true);
error_reporting(E_ALL);

include_once 
'config.inc.php';

$db mysql_connect($_config['host'], $_config['user'], $_config['password'])
        or die(
mysql_error());

mysql_select_db($_config['database'], $db)
        or die(
mysql_error());

$sql "DELETE FROM newssystem WHERE ID='$row[4]' Limit 1";
$result mysql_query($sql$db);
/* DELETE liefert keine Datensätze
while($row = mysql_fetch_row($result))
{
    echo"eintrag erfolgreich gelöscht";
}
*/
if ( 0==mysql_errno() )
    echo 
'Anzahl gelöschter Datensätze: 'mysql_affected_rows($db);
else
    echo 
mysql_error();
mysql_close($db);

echo 
"
<a href=uebersicht.php'>zurück zur übersicht</a>"
;
?>
aus?

Wo kommt $row[4] her?
 
Alt 27.05.2005, 13:07  
Erfahrener Benutzer
 
Registriert seit: 07.04.2005
Beiträge: 184
LA-Finest
Standard

ich hab des jetzt dann auch gemerkt ^^ das row[4] niergends her kommt hab dann mal so des ein wenig umgebastelt
PHP-Code:
<?php

$select_id 
"SELECT ID FROM newssystem";
$res mysql_query($select_id);

$sql "DELETE FROM newssystem WHERE ID='$row[0]' Limit 1";

?>
und wie muss ich dann weiter vor gehen??

muss ich das dann bloß noch in die schritte von VolkerK implementieren?


gruß la-finest
__________________
Eine Programmiersprache kann man nicht perfekt beherrschen,
nur gut.
Ansonsten hätte man sie erfunden!

www.bazubi.com/forum --> allgem. IT-Forum
LA-Finest ist offline  
Alt 27.05.2005, 13:16  
Erfahrener Benutzer
 
Registriert seit: 09.03.2004
Beiträge: 601
Webunni.de
Webunni.de eine Nachricht über ICQ schicken
Standard

wo kommt $row[0] her?
__________________
yeah montag ab nach holland
Webunni.de ist offline  
Alt 27.05.2005, 13:22  
Erfahrener Benutzer
 
Registriert seit: 07.04.2005
Beiträge: 184
LA-Finest
Standard

hab jetzt nochmal was anderes probiert, ohne meine $row[]:

PHP-Code:
<?php

include_once 'config.inc.php';

$db mysql_connect($_config['host'], $_config['user'], $_config['password']);

mysql_select_db($_config['database']);

$select_id "SELECT ID FROM newssystem";
$res mysql_query($select_id);

$sql "DELETE FROM newssystem WHERE ID='$select_id' Limit 1";
//$result = mysql_query($sql) or die(mysql_error().'
Query'.$sql);


echo "[url='
news_uebersicht.php]zurück zur übersicht[/url]";

mysql_close($db);

?>
aber des funzt au net!

ich hab absolut kein plan wie ich des angehen kann
__________________
Eine Programmiersprache kann man nicht perfekt beherrschen,
nur gut.
Ansonsten hätte man sie erfunden!

www.bazubi.com/forum --> allgem. IT-Forum
LA-Finest ist offline  
Alt 27.05.2005, 13:39  
Gast
 
Beiträge: n/a
Standard

anstatt jett immer irgendwelche Dinge auszutauschen, sage uns doch besser mal, was der Wert sein und wo er herkommen soll. Mit einfachen Worten - kein Code.
 
Alt 27.05.2005, 13:47  
Erfahrener Benutzer
 
Registriert seit: 07.04.2005
Beiträge: 184
LA-Finest
Standard

sry!

also ich hab so eine übersicht wie oben schon erklärt, wenn man dann auf löschen drückt, soll dieser datensatz aus der tabelle gelöscht werden!

und der wert den ich versuche zu ermitteln, soll die ID dieses zu löschenden datensatzes sein! er ist in der Datenbank gespeichert!
__________________
Eine Programmiersprache kann man nicht perfekt beherrschen,
nur gut.
Ansonsten hätte man sie erfunden!

www.bazubi.com/forum --> allgem. IT-Forum
LA-Finest ist offline  
Alt 27.05.2005, 13:50  
Gast
 
Beiträge: n/a
Standard

Gut, der Parameter wird also mit der Anfrage zusammen übermittelt.
Das passiert über einen link (<a href="delete.php?id=1234">) oder über ein Formular?

Wenn ersteres: wie sieht der link genau aus?
wenn zwewiteres: wie sieht das Formular genau aus?

Du kannst Dir aber schon mal http://php.net/registerglobals durchlesen.
 
Alt 27.05.2005, 13:53  
Erfahrener Benutzer
 
Registriert seit: 07.04.2005
Beiträge: 184
LA-Finest
Standard

also ich hab den link.

der link sieht folgenmder maßen aus: <a href='news_loeschen.php'>
dann hab ich die news_löschen.php geschrieben, die dann den datensatz löschen soll! also er ruft die news_löschen auf und lösdcht dann den datensatz und geht wieder auf die übersicht.
__________________
Eine Programmiersprache kann man nicht perfekt beherrschen,
nur gut.
Ansonsten hätte man sie erfunden!

www.bazubi.com/forum --> allgem. IT-Forum
LA-Finest ist offline  
Alt 27.05.2005, 14:13  
Gast
 
Beiträge: n/a
Standard

oh, dann liegt das (Verständnis-)Problem wohl tiefer.

Dann mal eine kurze Was-Passiert-Dann-Maschine für einen normalen webserver-php-Durchlauf.
  • Benutzer X ruft http://www.serv.er/skript.php auf
  • Der webserver sucht bei sich nach /skript.php und was damit passieren soll
  • php ist installiert und konfiguriert, also ruft der webserver php zur Behandlung dieser Anfrage auf (samt der Angabe welches Skript ausgeführt werden soll)
  • php arbeitet skript.php von Anfang an ab
  • alles, was dabei ausgegeben wird, wird über den webserver an den anfragenden client als Antwort geschickt
  • Die Anfrage samt Antwort ist beendet, wenn php mit dem Abarbeiten des Skripts fertig ist.
  • php räumt "herumliegende" resourcen von skript.php ab, d.h.
  • sämtliche flüchtigen Werte von skript.php gehen serverseitig verloren.
Jetzt oder in der Zwischenzeit kann der Benutzer eine neue Anfrage auslösen - aber unabhängig davon, ob die erste Ausführung fertig ist oder nicht, handelt es sich um eine komplett neue Anfrage.
Eine Anfrage sieht für den webserver (und für php) aus wie die andere. Es ist nicht im Protokoll http verankert, mehrere Anfragen miteinander zu verknüpfen. D.h. weder der webserver noch php "wissen" von sich aus, dass eine Anfrage zu einer vorherigen "gehört". Dafür muss der Programmierer selbst sorgen (siehe auch: http://www.zend.com/zend/tut/session.php)

Langer Rede kein Sinn:
Es muss bei der erneuten Anfrage mindestens mitgeliefert werden, welcher Datensatz gelöscht werden soll
<a href="news_loeschen.php?id=3">
<a href="news_loeschen.php?id=145">
<a href="news_loeschen.php?id=1037993754">
usw. usw.
Für das anzeigende Skript heißt das, dass die ID des jeweils aktuellen Datensatzes an den link angehängt werden muss.
Also irgendwas in der Art
PHP-Code:
<?php
...

while( 
$row=mysql_fetch_array($result) )
{
?>
    <div class="deltepost">
        <?php echo htmlentities($row['titel']); ?>
        

        <a href="news_loeschen.php?id=<?php echo $row['id']; ?>">
<?php    
}

...
?>
je nachdem, wie das jetztige Skript aufgebaut ist.
Der übergebene Parameter kann dann wie unter http://php-net/registerglobals beschrieben abgefragt werden.
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Statistik Script Referrer Problem 7Style PHP Tipps 2008 28 01.07.2008 15:14
Problem mit php script Jelko PHP Tipps 2008 2 19.08.2007 23:28
Login script Problem Marian Datenbanken 8 30.03.2006 20:16
passwort script problem PHP Tipps 2006 8 15.02.2006 10:30
[Erledigt] Delete aus mehreren Tabellen - Problem Datenbanken 4 16.09.2005 15:24
Problem mit Tracker script b++ PHP Tipps 2005-2 1 14.09.2005 01:54
[Erledigt] SELECT * FROM 2 Tabellen - Problem Datenbanken 1 01.09.2005 16:30
Problem mit Script auf verschiedenen Servern PHP Tipps 2005 40 22.03.2005 17:26
problem fertiges script anzupassen kid01 HTML, Usability und Barrierefreiheit 8 22.03.2005 07:25
Problem mit Script Mex PHP Tipps 2005 5 13.03.2005 21:29
Logik Problem, delete File... PHP-Fortgeschrittene 6 07.11.2004 18:27
Delete Problem aus Datebank nach bestimmter Zeit PHP Tipps 2004 1 25.10.2004 10:22
Problem bei Script Formular Daten und Baum PHP Tipps 2004 1 27.09.2004 23:19
delete script problem PHP Tipps 2004 5 23.07.2004 14:39

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
sql benutzer komplett löschen über script, delete * from member where id member = \'2\' limit 1

Alle Zeitangaben in WEZ +1. Es ist jetzt 10:19 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.