Toon posts:

[PHP/MySQL] checkbox probleem

Pagina: 1
Acties:
  • 100 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Hi,

Ik heb een probleem met checkboxjes.
Dit heb ik:
Afbeeldingslocatie: http://pride.gamepoint.net/~gamers7/checkbox.jpg

Dit zijn links naar websites van bezoekers die ze zelf gesubmit hebben (aangezien ik lokaal aan het testen ben staat nu mijn localhost adres er als ip). Om nu te voorkomen dat alles apart verwijderd moet worden wanneer een spammer bezig is, wil ik dus makkelijk alles in 1 keer weg kunnen halen. Maar hoe?

Ik heb nu de checkbox als naam allemaal 'delete[]' meegegeven en value '$id', oftewel het ID nummer van elk item.

Nu kan ik wel met een foreach() iedere keer de query uit laten voeren om elke id nummer apart te verwijderen, maar dat kost nogal wat query's. Kan dat niet handiger? Alvast bedankt voor het antwoord!

Verwijderd

kan dat niet met:
"DELETE FROM tabelnaam WHERE id='$delete[0]' OR id='$delete[1]' enz."
of denk ik nu te makkelijk???

Verwijderd

Topicstarter
Er zijn nu 3 items, maar dat kunnen er veel meer of minder worden. Dus dat gaat niet werken.

  • kvdveer
  • Registratie: November 2000
  • Laatst online: 06-11-2025

kvdveer

Z.O.Z.

in een foreach loopje de query genereren
Op donderdag 03 januari 2002 23:54 schreef doniek het volgende:
kan dat niet met:
"DELETE FROM tabelnaam WHERE id='$delete[0]' OR id='$delete[1]' enz."
of denk ik nu te makkelijk???
of:
DELETE FROM table WHERE id IN ($delete[0],$delete[1],$delete[2])
PHP:
1
2
3
4
5
6
7
8
<?
$query = 'DELETE FROM table WHERE id IN (';
foreach ($delete as $id) {
  $query .= "$id,";
}
$query = 'NULL)'; // null kan nooit je ID zijn, 
// Zo handel je het einde van je query (met overbodige komma) makkelijk doch correct af.
?>

Localhost, sweet localhost


Verwijderd

Topicstarter
ah bedankt! Wist dus niet dat het zo kon, gelijk ff proberen :).

  • mocean
  • Registratie: November 2000
  • Laatst online: 31-08 09:14
Op vrijdag 04 januari 2002 00:03 schreef kvdveer het volgende:
in een foreach loopje de query genereren
[..]

of:
DELETE FROM table WHERE id IN ($delete[0],$delete[1],$delete[2])
PHP:
1
2
3
4
5
6
7
8
<?
$query = 'DELETE FROM table WHERE id IN (';
foreach ($delete as $id) {
  $query .= "$id,";
}
$query = 'NULL)'; // null kan nooit je ID zijn, 
// Zo handel je het einde van je query (met overbodige komma) makkelijk doch correct af.
?>
Klein foutje in de 2 na laatste regel (punt vergeten):
PHP:
1
2
3
<?
$query .= 'NULL)'; // null kan nooit je ID zijn, 
?>

Anders werkt het nooooit :)

Koop of verkoop je webshop: ecquisition.com


Verwijderd

Topicstarter
hehe idd, dat heeft geholpen :).

  • kvdveer
  • Registratie: November 2000
  • Laatst online: 06-11-2025

kvdveer

Z.O.Z.

tuurlijk heeft dat geholpen.. anders post ik het toch niet! (8>

hmmm * kvdveer wordt arrogant.
Doorgaans betekent dat bedtijd :z :O

Localhost, sweet localhost


Verwijderd

Dit probleem had ik ook, heb het ook met een array opgelost.

Maar nu zit ik met het volgende:

Hoe krijg je juist wel alle boxjes in 1 keer aangevinkt. Dus zo'n hotmail principe met checked all ofzo

Verwijderd

Op vrijdag 04 januari 2002 18:28 schreef Ketje het volgende:
Dit probleem had ik ook, heb het ook met een array opgelost.

Maar nu zit ik met het volgende:

Hoe krijg je juist wel alle boxjes in 1 keer aangevinkt. Dus zo'n hotmail principe met checked all ofzo
kan je met JavaScript wel fixen.
een checkbox heeft de eigenschap "checked" die je op true of false kan zetten via
document.formnaam.elementnaam.checked = true;

dat in een loopje gooien en je hebt het. Ipv elementnaam kan je ook een array gebruiken hoor.
Pagina: 1