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

    [PHP] - campo form multiselect ed array

    Salve,
    HO un campo select dove ho impostato l'opzione multiselect.

    <option value="1">NOME</option>
    <option value="2">NOME2</option>
    <option value="3">NOME3</option>
    <option value="4">NOME4</option>
    <option value="5">NOME5</option>
    <option value="6">NOME6</option>


    il form invia i dati alla pagina recupero.php. Quindi se avrò selezionato 3 opzioni dal campo select (2,4 e 5) la stringa sarà del tipo

    recupero.php?select=2&select=4&select=5

    Questi valori select andranno inseriti in un database con campi ID e NOME (inserirò tanti record quanti sono i valori selezionati)... nel mio caso:
    valore 2 -> nuovo record ID=valore 2 NOME=NOME2
    valore 4 -> nuovo record ID=valore 4 NOME=NOME4
    valore 5 -> nuovo record ID=valore 5 NOME=NOME5
    ora sapete come fare per recuparere i valori di selected usarli come array per effettuare un ciclo sull'array ed inserire tali valori nel Database?
    Grazie in anticipo per l'aiuto!!
    saludos,Kosee

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    innanzi tutto manda i dati in post, e vedrai che anzichè ricevere una variabile normale riceverai un array contenente i valori selezionati

    ciao

  3. #3
    Originariamente inviato da gianiaz
    innanzi tutto manda i dati in post, e vedrai che anzichè ricevere una variabile normale riceverai un array contenente i valori selezionati

    ciao
    Hai ragione.. ho provato tutto tranne questo!!..
    L'ignoranza regna...
    Grazie ancora Ho risolto:
    (visto che altri potrebbero avere bisogno. posto il codice.

    $CountARTselect=count($_POST['select']);
    echo $CountARTselect;
    for($iMS = "0"; $iMS <= $CountARTselect; $iMS++){
    if(isset($_POST['select']["$iMS"]) && trim($_POST['select']["$iMS"]) != ""){
    echo "-> ".$_POST['select']["$iMS"]."
    ";
    }}
    saludos,Kosee

  4. #4
    Altro problemuccio.. no riesco a risolverlo

    dal FORM select selezioni i valori 1,2,5

    stampo a video l'Array che mi restituisce:
    valore 1
    valore 2
    valore 5

    ma nel database inserisce solo il "valore 1" e non va oltre:
    $CountARTselect=count($_REQUEST['select']);
    for($iMS = "0"; $iMS <= $CountARTselect; $iMS++){
    if(isset($_REQUEST['select']["$iMS"]) && trim($_REQUEST['select']["$iMS"]) != ""){

    $query2 = "INSERT INTO $DBRef (REF_MS, REF_AR, REF_EX) VALUES ('".$newrefID."', '".$_REQUEST['select']["$iMS"]."', '1')";
    mysql_query($query2);
    echo $_REQUEST['select']["$iMS"]."
    ";
    }
    }


    scusate ancora per l'ignoranza he he!!
    saludos,Kosee

  5. #5
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    un primo consiglio, usa il tasto code del forum per riportare del codice perchè cosi non si capisce niente.

    Poi per ciclare gli array esiste la struttura di controllo foreach(); Il cui utilizzo basilare è il seguente:

    codice:
    foreach($_POST['select'] as $valore) {
    echo $valore;
    }
    Ciao

  6. #6
    giusto.. grazie e provo subito!!
    saludos,Kosee

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.