Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    eliminazione record con modulo

    Ciao a tutti e grazie per l'aiuto che vorrete darmi.
    Ho cercato in ognidove ma non riesco a risolvere questo problema:

    Devo eliminare dei record da una tabella e vorrei farlo mediante un from in cui l'utente clicca su una checkbox per scegliere quali record eliminare

    con il ciclo che qui trascrivo creo all'interno del form tanti chekbox quanti sono i record:

    while ($rs = mysql_fetch_array($tabella))
    {

    $i = $i+1;

    echo "<input type=checkbox name= 'check$i'value=$rs[id] checked=checked /> Record id: $rs[id]
    ";
    }

    Con il tasto "submit" vorrei passare alla pagina che elimina i record SOLTANTO quelli relativi ai checkbox che sono a "true" al momento della conferma.

    Qualcuno può aiutarmi???

    Grazie a tutti!
    MassiPT

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Bhè, non hai alcun problema, salvo hai pasticciato per bene, visto che le sole checkbox che vengono passate sono quelle checked. Le altre sono "invisibili" al browser e invisibili alla pagina che raccoglie ed elabora i dati provenienti dal submit del form. Vedendo il tuo codice capisco il pasticcio:

    Prova così:

    codice:
    <input type="checkbox" name="check[]" value="<?php echo($rs['id']);" /></br>
    Nella pagina che esegue il DELETE in $_POST['check'] avrai l'array di tutte e sole le checkbox selezionate. Ne fai un implode (come collante metti la ,) e cancelli con

    "DELETE FROM table WHERE id IN (".$checkimploso.")"
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  3. #3
    Grazie per la risposta!
    MassiPT

  4. #4
    Chiedo ancora scusa ma il modulo si trova all'interno di un comando 'Echo' di php e non riesco a sistemarlo in modo da farlo funzionare.
    MassiPT

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Posta un po' più di codice.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  6. #6
    questo è il modulo come modificato grazie alle tue indicazioni:

    echo "<form action='elimina.php' method='POST' target='_self' enctype='application/x-www-form-urlencoded'>";

    while ($rs = mysql_fetch_array($tabella))
    {

    echo "<input type='checkbox' name='check[]' value='$rsviola[id_violazione]' />Record id: $rs[id]</br>
    <input type='submit' value='Conferma eliminazione'/></form>";
    }
    MassiPT

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Ah, lascia stare tutto quell'echo. Chiudi il tag PHP e scrivi direttamente
    codice:
    <form action="elimina.php" method="post" enctype="application/x-www-form-urlencoded">
    <?php
      while ($rs = mysql_fetch_array($tabella))  { ?>
      <input type="checkbox" name="check[]" value="<?php echo($rs['id_violazione']);?>" />Record id: <?php echo($rs['id']);?>
    
    <?php } ?>
      <input type="submit" value="Conferma eliminazione" />
    </form>
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  8. #8
    Funziona tutto! E siccome sono testone l'ho fatto funzionare anche con l'eco.

    Ti ringrazio infinitamente per la disponibilità.
    MassiPT

  9. #9
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Prego. Come ti trovi meglio... siccome spesso uso DW che colora diversamente il codice PHP da quello HTML mi trovo bene a tirare fuori l'html dal PHP, risparmio tempo ed errori con apici e parentesi mancanti.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.