| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

27-08-2009, 19:23
|
|
Cappo
Registrierter Benutzer
|
|
Registriert seit: Aug 2009
Beiträge: 43
|
|
selektiertes Löschen (Checkboxen)
Hallo,
ich komm einfach nicht drauf wie ich es anstellen soll. Ich habe lasse mir verschiedene Blogeinträge anzeigen und hinter jedem Blogeintrag ist eine Checkbox. Und jetzt will ich die gecheckten Boxen löschen können. Aber ich weiß nicht wie ich rausfinden kann (per PHP) welche Boxen "gecheckt" worden sind oder besser gesagt welche Blogeinträge gelöscht werden sollen. Ich habe es schon mit einem Array versucht aber das klappte nicht. Habt ihr eine Ahnung wie ich das angehen soll? Komm irgendwie nicht drauf...
MfG
Cappo
|

27-08-2009, 19:44
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 24.486
|
|
Zitat:
Zitat von Cappo
Aber ich weiß nicht wie ich rausfinden kann (per PHP) welche Boxen "gecheckt" worden sind
|
Ganz einfach: Angekreuzt worden sind die, deren name=value-Paare übermittelt werden.
Zitat:
|
Ich habe es schon mit einem Array versucht aber das klappte nicht.
|
Solche Äusserungen fallen nicht in den Bereich "brauchbare Problembeschreibung", sondern eher unter Jammer-Posting.
Also liefere bitte was konkretes.
Einfach nur die IDs der Datensätze als values so zu übergeben, dass man sie letztlich in einem Array geliefert bekommt, stellt deigentlich kein Problem dar.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
|

27-08-2009, 20:04
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.310
|
|
die werden warscheinlich in einer Schleife erzeugt. Du musst dir das in etwa so vorstellen:
PHP-Code:
while ($row = mysql_fetch_assoc($result))
{
echo '<input type="checkbox" name="drop[]" value="'.$row['id'].'" />';
}
und dann hat man alle markierten Checkboxen im Array $_POST['drop']. Kannst du mit print_r($_POST) ja überprüfen.
Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

27-08-2009, 20:05
|
|
Cappo
Registrierter Benutzer
|
|
Registriert seit: Aug 2009
Beiträge: 43
|
|
Also ich habs schon mal so versucht.
PHP-Code:
<input type="checkbox" name="bc[]" value="'.$data['blogID'].'" />
und als Test ne einfach Ausgabe anhand einer foreach Schleife:
PHP-Code:
foreach($_POST['bc'] as $checked) { echo checked; }
aber da wirft er mir schon einen Fehler aus:
PHP-Code:
Warning: Invalid argument supplied for foreach() in C:xampphtdocswreathgroundadminincblog_edit.php on line 2
MfG
Cappo
Geändert von Cappo (27-08-2009 um 20:17 Uhr)
|

27-08-2009, 20:07
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.310
|
|
Schau auf meinen obigen Post. Da findest du die Lösung  .
Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

27-08-2009, 20:17
|
|
Cappo
Registrierter Benutzer
|
|
Registriert seit: Aug 2009
Beiträge: 43
|
|
jo die checkboxen werden mit einer schleife (foreach) erzeugt. Allerdings wenn ich sie nur mit print_r($_POST['bc']); prüfe wird gar nichts angezeigt.
P.S:
Sorry hab in meinem Beitrag nur 'bc' statt 'bc[]' als Name der Checkbox geschrieben. (editiert)
|

27-08-2009, 20:19
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 24.486
|
|
Dann machst du wohl was falsch. Was, kann man vielleicht sagen, wenn du den kompletten Code zeigst. (Bitte auf's Wesentliche reduziert - den Minimal-Code, mit dem in deinem Test das Problem nachvollziehbar bleibt, und kein komplettes Monsterscript.)
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
|

27-08-2009, 20:30
|
|
Cappo
Registrierter Benutzer
|
|
Registriert seit: Aug 2009
Beiträge: 43
|
|
Okay dann mal Auszüge aus meinem Code:
PHP-Code:
print_r($_POST['bc']);
//Form start <form method="post" action="index.php?site=edit" style="display:inline;">
/* * überflüssiger code */
<input type="image" src="img/delete_blog.png" name="selectedDelete" />
/* * überflüssiger code */
foreach ($blogDatas as $data) {
/* * überflüssiger code */
<div style="float:left;"><input type="checkbox" name="bc[]" value="'.$data['blogID'].'" /></div>
/* * überflüssiger code */
}
/* * überflüssiger code */
</form>
Ich habe in dem Form was hier gezeigt wird noch weitere Forms verschachtelt. Könnte es daran liegen?
Ich hoffe das ist nicht zu kurz und trotzdem verständlich.
MfG
Cappo
|

27-08-2009, 20:32
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 24.486
|
|
Zitat:
Zitat von Cappo
Ich habe in dem Form was hier gezeigt wird noch weitere Forms verschachtelt. Könnte es daran liegen?
|
D'oh!
Formulare zu "verschachteln", ist in HTML nicht erlaubt.
Validiere bitte künftig deinen HTML-Code, bevor du wegen so einem Quark fragen kommst!
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
|

27-08-2009, 20:34
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.310
|
|
Zitat:
Zitat von Cappo
Ich habe in dem Form was hier gezeigt wird noch weitere Forms verschachtelt. Könnte es daran liegen?
|
Mann, Junge  . Man verschachtelt keine Formulare! So kann das ja nichts werden. Btw: besorg dir mal den HTML-Validator für den Firefox, der zeigt dir solche Fehler an. Und valide sollte der HTML-Code auf jeden Fall sein.
Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

27-08-2009, 20:52
|
|
Cappo
Registrierter Benutzer
|
|
Registriert seit: Aug 2009
Beiträge: 43
|
|
Okay okay  ...sorry bin neu darin. 
Habs nun mit für XHTML 1.1 validiert, waren eh nur 6 Fehler.
Wie soll ich das nun aber machen weil zwischen meinem input was das Form abschickt und meinen Checkboxen sind noch andere forms (nicht mehr verschachtelt).
MfG
Cappo
|

27-08-2009, 20:56
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 24.486
|
|
Zitat:
Zitat von Cappo
Wie soll ich das nun aber machen weil zwischen meinem input was das Form abschickt und meinen Checkboxen sind noch andere forms
|
1. Warum?
2. Löse dich von der Idee, dass Position und Reihenfolge von Elementen Quellcode unbedingt was mit Darstellung zu tun haben muss.
3. Sieh erst mal zu, dass du das ganze mit HTML und PHP lauffertig kriegst, ohne irgendwas irgendwo "zwischen" zu basteln, oder sonst was. Kümmere dich zuerst nur um diesen einen Teil der Aufgabe - wenn der fertig ist und funktioniert, dann kannst du weitersehen.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
|

27-08-2009, 20:58
|
|
Cappo
Registrierter Benutzer
|
|
Registriert seit: Aug 2009
Beiträge: 43
|
|
jo okay. habe auch schon was im Kopf womit ich glaub ich was anfangen kann. Naja mal sehen....danke dennoch an alle
MfG
David
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
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.
HTML-Code ist aus.
|
|
|
|
PHP News
|