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

    seleziono più record e poi li elimino con un solo bottone

    Ho messo la check box alla fine di ogni riga di una tabella che mostra i valori presi da un db. come faccio con un unico bottone ad eliminare dal db i record che equivalgono alle righe selezionate?

    Poi dovrei fare la stessa cosa modificando un valore per ogni riga con un input text e poi con il bottone modifica andare a modificare solo i record del db le cui input sono state compilate. spero di essere stata chiara
    milka

  2. #2
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Nel primo caso ce la puoi fare, ma nel secondo devi fare un update per ogni riga.
    Per cancellarle tutte in una volta avrai evidentemente un identificativo di ciascuna (ad es. un id): basta concatenarli e poi lanciare la delete con un 'IN'.

    Es.
    Codice PHP:
    $stringa join(',',$arrayDeiValori);
    $query "DELETE FROM tabella WHERE id IN($stringa)"
    A quel punto basta eseguire la query. Ricorda però che prima devi mettere i singoli valori dell'array fra apici
    Codice PHP:
    foreach ($arrayDeiValori as $key => $val) {
      
    $arrayDeiValori[$key] = "'".$val."'";

    In realtà se sono dati numerici non sarebbe indispensabile, ma è meglio farlo comunque, è più sicuro.

  3. #3
    forse è troppo complicato per me. sto cercando di capire ma non ci riesco molto, se posto il codice man mano mi puoi aiutare? Innanzi tutto, la check deve stare in un form?
    milka

  4. #4
    il mio identificativo è ID
    Dopo aver fatto la selezione dal db ho $ID=$ordine[ID]
    La check è <input type=checkbox name=elimina value=$ID>?
    milka

  5. #5
    Originariamente inviato da luca200
    Codice PHP:
    $stringa join(',',$arrayDeiValori);
    $query "DELETE FROM tabella WHERE id IN($stringa)"
    Urca...applico subito anch'io
    I hate to feel the Love beetwen us die...
    This is our last embrace...


    IndiSound.net - La musica italiana indipendente
    Bertuccia.com - Chat, Forum e Galleria Fotografica...

  6. #6
    si ma a me chi mi aiuta?
    milka

  7. #7
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    codice:
    <input type=checkbox name=elimina[] value=$ID>
    Devi dare alle checkbox il nome con le parentesi quadre, così PHP riceverà un array con i valori selezionati.
    Dopo puoi usare quello come $arrayDeiValori che avevo postato prima

  8. #8
    mi sono semplificata la vita. ho messo il bottone elimina per ogni riga e così lo stesso con il bottone modifica. Quello che vorrei capire è perchè il form per modificare non riconosce il controllo che ho messo in un file js per vedere se il campo input è stato compilato o no.
    ho messo nel tag form onSubmit=\"return controlla()\" e sul file js

    function controlla()
    {if(modquantita.QUANTIB.value=="")
    { alert("Attenzione! Non è stato inserito nessun valore");
    return false; }
    return true; }

    dove il form name=modquantita e input name=QUANTIB
    però non lo rpende proprio in considerazione

    se invece faccio un controllo direttamente con il php
    tipo if (!$QUANTIB) {echo "Non è stato inserito nessun valore";}
    funziona

    come mai?
    milka

  9. #9
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Stai confrontando due cose che non c'entrano niente l'una con l'altra.
    Se QUANTIB è una checkbox, il controllo javascript per vedere se è selezionata è

    codice:
    if (modquantita.QUANTIB.checked)
    Quanto a PHP, mi pare che tu stia lavorando con register_globals a on. Sarebbe meglio il contrario.

  10. #10
    no, sto parlando di un'altra cosa
    QUANTIB è una input text
    milka

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.