login  Naam:   Wachtwoord: 
Registreer je!
 Forum

HTML-values met PHP - link

Offline Webcreatorz - 20/12/2009 21:54
Avatar van WebcreatorzNieuw lid Hey allemaal

ik zit met een pagina bestaand uit een tabel waarvan in de eerste kolom een checkbox staat.

De gegevens die in die verschillende rijen staan worden opgeroepen uit de database. Nu zou ik graag een link maken dat ze die rijen die ze selecteren (door de checkbox aan te vinken) kunnen verwijderen.

Ik weet hoe ik de values van een HTML form oproep (door middel van deze uitleg: http://www.webd...ckbox.php3) maar hoe kan ik die uitkomst (de aangevinkte rijen) laten linken naar mijn (nog af te werken) PHP script?:

if(isset($_GET['behandel'])){
echo $_POST['geselecteed[]'];
}

En dit zou niet via een formulierknop moeten gebeuren, maar met een gewone tekstlink...

Ik slaag er echt niet in om dit op te lossen  

4 antwoorden

Gesponsorde links
Offline kaspar - 21/12/2009 10:19
Avatar van kaspar Nieuw lid if(isset($_GET['behandel'])){
echo $_POST['geselecteed[]'];
}

klopt dit wel?

moet het niet geselecteerd zijn?

wat ik altijd wel handig vind, btw is om eerst alle $_POST en alle $_GET in een variabele te zetten, dat is overzichtelijker.
en moeten het echt post én get zijn?
Offline ArieMedia - 21/12/2009 12:43 (laatste wijziging 21/12/2009 12:43)
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
  1. if(isset($_POST['zend'])) {
  2. foreach($_POST['geselecteerd'] as $iKey => $bSelect) {
  3.  
  4. echo $iKey.' is geslecteerd!<br>';
  5. }
  6. } else {
  7. echo '<input type="checkbox" name="geselecteerd[]"><input type="checkbox" name="geselecteerd[]"><input type="checkbox" name="geselecteerd[]"><input type="checkbox" name="geselecteerd[]">';
  8. // en natuurlijk nog een form en een submit knopje er bij doen..
  9. }
Offline NTS64 - 21/12/2009 14:48
Avatar van NTS64 PHP gevorderde Eerst en vooral: een HTTP request heeft maar één method, ofwel POST ofwel GET, niet beide.
Je formulier verzenden met javascript gaat met de javascript functie submit();
Bijvoorbeeld:

  1. <?php
  2. if($_SERVER['REQUEST_METHOD'] == 'POST')
  3. {
  4. foreach($_POST['geselecteerd'] as $optie)
  5. {
  6. mysql_query('DELETE FROM tabel WHERE veld = "'.$optie.'"') or die(mysql_error());
  7. }
  8. echo 'Geselecteerde velden verwijderd!';
  9. }
  10. ?>
  11. <form method="post" id="formulier">
  12. <input type="checkbox" name="geselecteerd[]" value="value1" />
  13. <input type="checkbox" name="geselecteerd[]" value="value2" />
  14. <input type="checkbox" name="geselecteerd[]" value="value3" />
  15. <a href="#" onclick="document.getElementById('formulier').submit();">Submit!</a>
  16. </form>

Het is wel niet zo optimaal om x-aantal queries te laten uitvoeren, maar ik ben geen expert in MySQL, misschien weet iemand anders een beter manier/SQL constructie?
Offline ArieMedia - 21/12/2009 15:30 (laatste wijziging 21/12/2009 15:32)
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
NTS64 schreef:
Eerst en vooral: een HTTP request heeft maar één method, ofwel POST ofwel GET, niet beide.
Je formulier verzenden met javascript gaat met de javascript functie submit();
Bijvoorbeeld:

[..code..]
Het is wel niet zo optimaal om x-aantal queries te laten uitvoeren, maar ik ben geen expert in MySQL, misschien weet iemand anders een beter manier/SQL constructie?

  1. <?php
  2. if($_SERVER['REQUEST_METHOD'] == 'POST')
  3. {
  4. $i = 0;
  5. $sql = 'UPDATE velden SET dit = dat';
  6. foreach($_POST['geselecteerd'] as $iKey => $optie) // $optie bevat alleen een boolean, geen key.. de key heb je juist nodig.
  7. {
  8. if($i == 0) {
  9. $sql .= ' WHERE veld = "'.$iKey.'"';
  10. } else {
  11. $sql .= ' AND veld ="'.$iKey.'"';
  12. }
  13. }
  14.  
  15. if(mysql_query($sql)) {
  16. echo 'Geselecteerde velden verwijderd!';
  17. } else {
  18. echo 'Er is een error in de sql! <br>'.$sql;
  19. }
  20. }
  21. ?>
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.215s