php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 08.04.2010, 15:49  
Benutzer
 
Registriert seit: 05.09.2007
Beiträge: 69
Minimi befindet sich auf einem aufstrebenden Ast
Standard Checkbox -> mehrere Einträge löschen (SQL)

Hallo zusammen,
ich stehe vor einem Problem:
Ich würde gerne meine Einträge auf meiner Datenbank löschen, genauergesagt sollen nur die gelöscht werden, die per Checkbox angewählt sind. Ich habe auch schon deswegen gegoogelt, jedoch sehr viele Lösungsvorschläge gesehen, aber nie die richtigen.

Hier ist mal eine Checkbox, wie sie aufgebaut ist. Diese wird immer wieder wiederholt, bis alle Datensätze dargestellt sind.

PHP-Code:
 echo "<input type=\"checkbox\" name=\"allchecked\" onclick=\"ALLChoice(document.checkboxall.allchecked, $i)\">"
Das ALLChoice ist nur, dass wenn eine bestimmte Checkbox angeklickt wird, alle anderen auch angeklickt werden.

Mein Lösungsvorschlag wäre, bei dem ich aber Probleme mit dem Umsetzen habe, dass ich es, wie im Internet beschrieben, mit explode(",", $_POST['allchecked']) mache, jedoch habe ich das Problem, dass das nicht funktioniert. Besonders weil ich mit der der Funktion ALLChoice keine Chance habe die Id irgendwo abzuspeichern.

Wüsste jemand Rat?

Grüße
Minimi ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 08.04.2010, 15:50  
Erfahrener Benutzer
 
Benutzerbild von MaiKaY
 
Registriert seit: 17.09.2009
Beiträge: 633
PHP-Kenntnisse:
Anfänger
MaiKaY befindet sich auf einem aufstrebenden Ast
Standard

name="delete[]"

und dann fängste alle checkboxen mit $_POST["delete"]; ab
__________________
ACHTUNG!!! SIGNATUR!!!
PHP-Code:
var_dump($gehirn); exit; 
0 ??? WTF ? freutag.net
MaiKaY ist offline  
Alt 08.04.2010, 15:50  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.991
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Was genau ist Deine Frage?
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online  
Alt 08.04.2010, 16:25  
Benutzer
 
Registriert seit: 05.09.2007
Beiträge: 69
Minimi befindet sich auf einem aufstrebenden Ast
Standard

Hallo zusammen,
@MaiKaY: Das habe ich auch schon ausprobiert, jedoch gibt es dann wieder Probleme mit dem Aktivieren aller Checkboxen

@nikosch: Ich wollte fragen, ob jemand wüsste, wie man das bewerkstelligen kann (nur bei "aktivierte" Checkboxen deren Einträge in SQL löschen). Das Prinzip kann man auch bei phpBB Foren->Private Nachrichten->Checkboxen sehen. Dabei kann man nur die Einträge löschen, die auch per Checkbox aktiviert worden sind.

Ich hoffe es ist nun klarer geworden

Grüße
Minimi ist offline  
Alt 08.04.2010, 16:27  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.991
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
jedoch gibt es dann wieder Probleme mit dem Aktivieren aller Checkboxen
Nicht wirklich. Denn getElementsByName kann auch mit ('name[]') umgehen. Ganz zu schweigen von den Möglichkeiten von jQuery.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online  
Alt 08.04.2010, 16:30  
Erfahrener Benutzer
 
Benutzerbild von MaiKaY
 
Registriert seit: 17.09.2009
Beiträge: 633
PHP-Kenntnisse:
Anfänger
MaiKaY befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Minimi Beitrag anzeigen
Hallo zusammen,
@MaiKaY: Das habe ich auch schon ausprobiert, jedoch gibt es dann wieder Probleme mit dem Aktivieren aller Checkboxen
Versteh ich nicht

Checkbox1 <input type="checkbox" name="delete[]" value="eine id" />
Checkbox2 <input type="checkbox" name="delete[]" value="eine id" />
Checkbox3 <input type="checkbox" name="delete[]" value="eine id" />

Checkbox 1&3 wurden "aktiviert" also sind auch nur diese beiden in deinem $_POST["delete"]-Array
__________________
ACHTUNG!!! SIGNATUR!!!
PHP-Code:
var_dump($gehirn); exit; 
0 ??? WTF ? freutag.net
MaiKaY ist offline  
Alt 08.04.2010, 16:31  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.991
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Es geht um eine select-all-checkboxes-JS-Funktionalität, die i.A. über das name-Attribut arbeitet. Lösung siehe oben.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online  
Alt 08.04.2010, 16:33  
Benutzer
 
Registriert seit: 05.09.2007
Beiträge: 69
Minimi befindet sich auf einem aufstrebenden Ast
Standard

Dann würde die "Ober-Checkbox" so aussehen:
Code:
<input onclick="ALLChoice(document.form1.allchecked[], 0)" name="allchecked[]" type="checkbox">
und die unter:
Code:
echo "<input type=\"checkbox\" name=\"allchecked[]\" onclick=\"ALLChoice(document.checkboxall.allchecked[], $i)\">";
Jedoch funktioniert es danach nicht mehr...

Grüße

PS: Mal noch der Javascript Code

Code:
function ALLChoice(field, i)
            {
              var checkcount = 0;
              var loop;

              for (loop = 1; loop < field.length; loop++)
              {
                if (i == 0)
                {
                  field[loop].checked = field[0].checked;
                }
                else
                {
                  if (field[loop].checked)
                  {
                    checkcount++;
                  }
                  field[0].checked = (checkcount == field.length-1);
                }
              }
            }
Minimi ist offline  
Alt 08.04.2010, 17:41  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von Minimi Beitrag anzeigen
Jedoch funktioniert es danach nicht mehr...
„Funzt nich“ ist keine brauchbare Problembeschreibung, sondern Mist.

Schau in JavaScript-Fehlerkonsole eines vernünftigen Testbrowsers wie bspw. Firefox, der wird dir dann schon sagen, was du falsch gemacht hast.

Zitat:
jedoch gibt es dann wieder Probleme mit dem Aktivieren aller Checkboxen
Die gibt es höchstens deshalb, weil du das Script dazu nur von irgendwo kopiert hast, aber nicht verstanden hast, wie es arbeitet. Hättest du das, dann sollte es kein grosses Problem sein, es entsprechend umzuschreiben, so dass es auch mit den geänderten Feldnamen klar kommt.

Also beschäftige dich bitte ein bisschen (mehr) mit JavaScript-Grundlagen.
ChrisB ist offline  
 


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] JavaScript dynamische Einträge löschen Munker JavaScript, Ajax und mehr 4 01.03.2010 11:01
mehrere sql einträge löschen, checkbox Marti95. Scriptbörse 5 24.01.2009 16:37
[Erledigt] Löschen mehrer Einträge RedDragon PHP Tipps 2008 5 04.08.2008 14:39
Doppelte einträge löschen Riks Datenbanken 6 25.04.2007 19:29
Datensätze mittels checkbox löschen Thunderstorm PHP Tipps 2007 6 21.01.2007 20:41
Einträge löschen // Datum Kein Genie PHP Tipps 2006 4 20.04.2006 12:48
Einträge die älter als 1 Jahr sind löschen FireFIghter PHP Tipps 2006 2 25.02.2006 18:36
pm per checkbox löschen kickz PHP Tipps 2006 12 24.01.2006 15:22
doppelte einträge löschen! Datenbanken 3 09.08.2005 14:38
Mehrere Checkboxen anwählen um mehrere Einträge zu löschen PHP Tipps 2005 7 08.05.2005 04:10
20 Tage alte Datenbank einträge löschen Datenbanken 6 10.01.2005 11:38
Nur markierte Einträge löschen mysql php PHP-Fortgeschrittene 2 19.09.2004 21:53
einträge im array mit key aber ohne value löschen PHP Tipps 2004 2 03.09.2004 12:16
Bestimmte einträge aus Datenbank löschen PHP Tipps 2004 2 05.08.2004 00:17
datein per checkbox löschen (php) rocco PHP Tipps 2004 16 27.06.2004 21:35

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
http://www.php.de/php-einsteiger/66635-checkbox-mehrere-eintraege-loeschen-sql.html, php mehrere datensätze löschen checkbox, php mehrere loeschen checkbox, php checkbox datensätze löschen, php checkbox mehrere löschen, php sql löschen mit checkbox, mehrere datensätze löschen checkbox, php mehrere datensätze checkbox, php datenbank eintrag löschen checkbox, mehrere datensatze löschen mysql, php checkbox onclick wieder entfernen standard#, sql delete checkbox phpbb, checkbox sql löschen, php datensätze mysql mit chekbox löschen, sql delete from where checkbox, checkbox sql, php sql löschen checkbox, sql mehrere einträge != 0, checkbox mehrere löschen, javascript \mehrere einträge löschen\ array schleife

Alle Zeitangaben in WEZ +2. Es ist jetzt 21:36 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