Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1

    Eliminare rcord selezionati con checkbox

    Ciao ragazzi.

    In una pagina mostro tutti i record presenti in una tabella.

    Ogni record avra' la sua checkbox.



    Io devo fare questo:



    Io devo cancellare alcuni record, per farlo spunto le checkbox dei record che voglio eliminare.... e dopo aver cliccato su un pulsante "ELimina" questi vengono eliminati.

    Il problema mio appunto è questo:

    Dopo aver cliccato su "Elimina" , nella pagina elimina_record.php come faccio a far capire al php che deve eliminare dove ho spuntato le caselle??
    IN REALTA' SONO REGISTRATO DAL 2001 PERO' MI HANNO BANNATO PER AVER SCRITTO DUE MESSAGGI NELLA SEZIONE ERRATA...CHE RICONOSCENZA!!!

  2. #2
    Nel form html tutti gli input checkbox devono avere come avere attributo "name" un nome seguito da parentesi quadra aperta e chiusa.Così per es.
    codice:
     <input type="checkbox" name="record[]" value="1">
    Poi una volta inviato il form alla pag elimina_record.php per avere i record selezionati fai così:
    Codice PHP:
    $checked $_POST["record"];
    foreach(
    $checked as $value)
        {
        
    //Supponendo che i valori del checkbox fossero gli ID della tabella 
        
    $query=mysql_query("DELETE FROM table WHERE id=$value");
        } 
    Ciao

  3. #3
    cosi non va.... mi da l'errore... che la funziona foreach cosi non è usata correttamente...
    IN REALTA' SONO REGISTRATO DAL 2001 PERO' MI HANNO BANNATO PER AVER SCRITTO DUE MESSAGGI NELLA SEZIONE ERRATA...CHE RICONOSCENZA!!!

  4. #4
    in alternativa

    for ($i=0; $i<count($checked); $i++) {
    //Supponendo che i valori del checkbox fossero gli ID della tabella
    $query=mysql_query("DELETE FROM table WHERE id=$checked[$i]");
    }

  5. #5
    Non funziona... cioè non mi da errori.
    Pero' non elimina nulla

    Codice PHP:
    for ($i=0$i<count($_POST[id]); $i++)
    {
    mysql_query ("DELETE from preferiti WHERE id='$_POST[id]' AND id_user='$_SESSION[id_user]' ") or die (mysql_error()); 

    IN REALTA' SONO REGISTRATO DAL 2001 PERO' MI HANNO BANNATO PER AVER SCRITTO DUE MESSAGGI NELLA SEZIONE ERRATA...CHE RICONOSCENZA!!!

  6. #6
    ovvio che ti da errore

    $_POST[id];

    dovrebbe essere un array di id non puoi utilizzarlo nella query in questo modo
    DELETE from preferiti WHERE id='$_POST[id]'

    poi se l'id identifica univocamente la riga del database non ha senso fare anche
    AND id_user='$_SESSION[id_user]'

  7. #7
    Originariamente inviato da pippuzzo80
    ovvio che ti da errore

    $_POST[id];

    dovrebbe essere un array di id non puoi utilizzarlo nella query in questo modo
    DELETE from preferiti WHERE id='$_POST[id]'
    Quindi come devo fare?
    IN REALTA' SONO REGISTRATO DAL 2001 PERO' MI HANNO BANNATO PER AVER SCRITTO DUE MESSAGGI NELLA SEZIONE ERRATA...CHE RICONOSCENZA!!!

  8. #8
    come hai chiamato le checkbox nella pagina precedente??

  9. #9
    tutte id..
    IN REALTA' SONO REGISTRATO DAL 2001 PERO' MI HANNO BANNATO PER AVER SCRITTO DUE MESSAGGI NELLA SEZIONE ERRATA...CHE RICONOSCENZA!!!

  10. #10
    innanzitutto, come suggerito da Devil1988, le devi chiamare name="id[]"

    poi nella pagina successiva fai cosi:

    $arrayId=$_POST['id'];
    for ($i=0; $i<count($arrayId); $i++)
    {
    mysql_query ("DELETE from preferiti WHERE id='$arrayID[$i]' ") or die (mysql_error());
    }

    fammi sapere

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 © 2024 vBulletin Solutions, Inc. All rights reserved.