WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 18.08.2004, 18:23   #1
Robin Hood
Jr. Member
 
Registriert seit: 30.06.2003
Alter: 68
Beiträge: 68


Robin Hood eine Nachricht über ICQ schicken
Standard Php mehrere Daten gleichzeitig löschen

Ich habe eine kleines Nachrichtenversendeprogramm auf meiner Seite programmiert(mit php) funktioniert soweit ganz gut.
Nur jetzt möchte ich, dass der user nicht jedes mal die nachricht ansehen muss wenn er sie löschen will, sondern so wie bei gmx nur auf der seite die checkbox anwählen muss.

meine checkbox sieht daher dann so aus:
<input type='checkbox' name='message' value='Id-der-nachricht'>

es funktioniert auch ganz normal das die Id-der-nachricht mitgeschickt wird sieht dann etwa so aus:
message=17&message=18&message=19

Das einzige problem, das ich hab ist es die nachrichten alle aufeinmal zu löschen.Könnt ihr mir helfen?

Wenn ihr was nicht ganz verstanden habt schreibt es einfach.

Danke im vorhinein!!!
____________________________________
mfg
Robin Hood

Robin Hood ist offline   Mit Zitat antworten
Alt 18.08.2004, 18:43   #2
pong
Inventar
 
Benutzerbild von pong
 
Registriert seit: 25.12.2000
Alter: 41
Beiträge: 9.063

Mein Computer

pong eine Nachricht über ICQ schicken
Standard

du gehst einfach das Array durch, welches die ID's enthält, mit einer Schleife und führst halt in dieser deine Löschprozedur durch..

pong
____________________________________
\"Ein Gewitter reinigt die Luft\", sagte der Mann, nachdem ein Blitz seine Frau erschlug

Nicht klicken!


Erstposteralarm/Beschwerde/Kummerkasten


Verplattet
pong ist offline   Mit Zitat antworten
Alt 18.08.2004, 19:43   #3
Robin Hood
Jr. Member
 
Registriert seit: 30.06.2003
Alter: 68
Beiträge: 68


Robin Hood eine Nachricht über ICQ schicken
Standard

Ja hab ich mir auch gedacht , nur wie bekomm ich die Ids in eine array?

wenn ich schreib:
$a = array($_REQUEST['message']);

dann schreibt er immer nur die erste id ins array!
____________________________________
mfg
Robin Hood

Robin Hood ist offline   Mit Zitat antworten
Alt 18.08.2004, 20:19   #4
FordPrefect
Veteran
 
Benutzerbild von FordPrefect
 
Registriert seit: 06.09.2002
Ort: Rottenmann
Alter: 59
Beiträge: 425


FordPrefect eine Nachricht über ICQ schicken
Standard

Also ich mache das bis jetzt so:
PHP-Code:
$i=0;
While (
$nachricht=(nachricht einlesen)){
echo 
"<input type='checkbox' name='nachricht[."$i."]' value='ID der Nachricht'>";
$i++; 
Und beim Auslesen
PHP-Code:
for ($i=0;$i<count($nachricht);$i++;){
if (
$nachricht[$i]!=NULL){
code zum löschen
}

Ich weiß nicht sehr elegant aber es funktioniert.
mfg Peter
____________________________________
Im Grunde will der Mensch nur eins:
Spass haben, glücklich sein und die Zeit so fröhlich wie möglich miteinader zu verbringen. Dafür verzichtet er gerne auf alles andere.
---------------------------------------
Unser Motto:
Es ist noch kein Meister vom Himmel gefallen, dafür aber jede Menge Nieten
Admiral James T. Kirk
----------------------------------------
Ich kommuniziere also mach ich mich verdächtig
----------------------------------------
FordPrefect ist offline   Mit Zitat antworten
Alt 19.08.2004, 17:48   #5
Robin Hood
Jr. Member
 
Registriert seit: 30.06.2003
Alter: 68
Beiträge: 68


Robin Hood eine Nachricht über ICQ schicken
Standard

Danke, danke, danke!!!
Endlich funktioniert es!!!
____________________________________
mfg
Robin Hood

Robin Hood ist offline   Mit Zitat antworten
Alt 19.08.2004, 18:12   #6
FordPrefect
Veteran
 
Benutzerbild von FordPrefect
 
Registriert seit: 06.09.2002
Ort: Rottenmann
Alter: 59
Beiträge: 425


FordPrefect eine Nachricht über ICQ schicken
Standard

Bitte gern geschehen
Und ich hatte so auf eine bessere Lösung gehoft.
mfg
Peter
____________________________________
Im Grunde will der Mensch nur eins:
Spass haben, glücklich sein und die Zeit so fröhlich wie möglich miteinader zu verbringen. Dafür verzichtet er gerne auf alles andere.
---------------------------------------
Unser Motto:
Es ist noch kein Meister vom Himmel gefallen, dafür aber jede Menge Nieten
Admiral James T. Kirk
----------------------------------------
Ich kommuniziere also mach ich mich verdächtig
----------------------------------------
FordPrefect ist offline   Mit Zitat antworten
Alt 26.08.2004, 18:46   #7
FordPrefect
Veteran
 
Benutzerbild von FordPrefect
 
Registriert seit: 06.09.2002
Ort: Rottenmann
Alter: 59
Beiträge: 425


FordPrefect eine Nachricht über ICQ schicken
Standard

Tut mir leid, so wie ich es Dir geschrieben habe, funzt es nich richtig.
Wenn Du nur mehr als eine Mail anclickst und sie nicht in laufender Reihenfolge sind, interpretiert er das nicht mehr richtig.
Du musst die gesamte Anzahl der Mails mitgeben, und dann:
PHP-Code:
for ($i=0;$i<=$anzahl der mails;$i++){ 
if (
$mail[$i]!=""){
usw
mfg Peter
____________________________________
Im Grunde will der Mensch nur eins:
Spass haben, glücklich sein und die Zeit so fröhlich wie möglich miteinader zu verbringen. Dafür verzichtet er gerne auf alles andere.
---------------------------------------
Unser Motto:
Es ist noch kein Meister vom Himmel gefallen, dafür aber jede Menge Nieten
Admiral James T. Kirk
----------------------------------------
Ich kommuniziere also mach ich mich verdächtig
----------------------------------------
FordPrefect ist offline   Mit Zitat antworten
Alt 27.08.2004, 00:02   #8
T.dot
Master
 
Registriert seit: 13.08.2003
Beiträge: 624


Standard

Nachdem ich sowas auf meinen PHP Seiten immer für fast alle Tabellen brauch, hab ich inzwischen ne funktion dafür (wie gut oder schlecht sie ist, darf jeder selbst rausfinden), die gekürze Version davon steht unten:

Übergeben wird das Array, der Name des Feldes der getrennt werden soll und der String fürs Teilen (zb n Beistrich)

PHP-Code:
function array_to_string($array$splitfield$splitstring=",")
{
    if(
sizeof($array)>0)
    {
        
$i=0;
        
reset($array[$splitfield]);    
        while(
$i<sizeof($array[$splitfield]))
        {    
            if(
current($array[$splitfield])!=0)
            {    
$strReturn .= current($array[$splitfield]) . "$splitstring";
            }
            
next($array[$splitfield]);
            
$i++;
        }
        return 
substr($strReturn,0,strlen($strReturn)-1);
    }

aufgerufen wird das ganze über:
$strdel = array_to_string($POST, "delBewertungsskala",",");

danach kann ich dann einfach mit:
$sql = "DELETE FROM tblTabelle WHERE ID IN ($strdel)";
alle Werte löschen die keiner mehr braucht...

Voraussetzung dafür ist natürlich, das das Array mit den jeweiligen IDs für den Datensatz durchnummeriert sind...

hoffe mich verständlich ausgedrückt zu haben, mfg Thomas
T.dot ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

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 an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


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


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag