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

    Ordine Selezione delle Checkbox

    C'è qualche problema nel codice ma ci sono quasi:

    HTML
    Codice PHP:
    <input type="checkbox" name="objectlist[]" id="checkbox1" value="1" onclick="addcheckbox(1);"/>
    <
    input type="text" name="orderlist[]" id="text1" value="" size="1"/>
    <
    input type="checkbox" name="objectlist[]" id="checkbox2" value="2" onclick="addcheckbox(2);"/>
    <
    input type="text" name="orderlist[]" id="text2" value="" size="1"/> 
    JS (per l'interazione con la text)
    Codice PHP:
    var i=0;

    function 
    addcheckbox(id){
             if (
    document.getElementById){
                 
    text document.getElementById("text"+id);
                 
                     if (
    document.getElementById("checkbox"+id).checked) {
                        
    i++;
                        
    text.value=i;
                     }else{
                        
    i--; 
                        
    text.value="";
                     }
             }

    PHP
    Codice PHP:
    $ord $HTTP_POST_VARS['orderlist'];
    $check_ordered = array ();

    asort ($ord);
    reset ($ord);

    while (list(
    $k$v) = each ($ord))
    {
        if (
    is_numeric($v))
            
    array_push ($check_ordered$k);
    }
    //Poi ordino la Objectlist secondo gli elementi della Orderlist 
    Che ne dite qual'è il problema?

  2. #2
    Per cominciare non utilizzare $HTTP_POST_VARS ma $_POST.

    Poi, che cosa dovrebbe fare il codice che hai postato e che cosa invece fa realmente (ossia quale è il problema)?

  3. #3
    GraZie per la risposta.
    Praticamente ho un elenco di oggetti, seleziono la checkbox in un certo ordine (il javascript fà comparire il numero i nella casellina text) poi mi genero una pagina (codice non presente) dove
    praticamente ho gli oggetti nell'ordine che li ho selezionati.

    Praticamente non li ordina secondo come li ho clikkati.

  4. #4
    Posta qui il valore restituito dal seguente codice PHP:
    Codice PHP:
    <?php var_export($ord);?>

  5. #5
    array ( 1 => '1', 2 => '2', 0 => '3', )

    Codice PHP:
    $ord $POST['orderlist'];
    $check_ordered = array ();

    asort ($ord);
    reset ($ord);

    while (list(
    $k$v) = each ($ord))
    {
        if (
    is_numeric($v))
            
    array_push ($check_ordered$k);
    }

    var_export($ord); 

  6. #6
    Per favore, inserisci il codice suggerito IMMEDIATAMENTE DOPO a $ord = $POST['orderlist']; e posta di nuovo il risultato del comando.

  7. #7
    Ti commento il codice:

    - come arriva $ord (l'ordine sporco di selezione)
    $ord=array ( 0 => '', 1 => '1', 2 => '2', );

    - asort ($ord); Ordina un array e mantiene le associazioni degli indici
    $ord=array ( 0 => '', 1 => '1', 2 => '2', )

    - reset ($ord); Porta il puntatore in prima posizione.

    - list($k, $v) = each ($ord) mette ad ogni iterazione indice in $K e valore in $V
    se è un numerico lo mette nell'array $check_ordered

    while (list($k, $v) = each ($ord))
    {
    if (is_numeric($v))
    array_push ($check_ordered, $k);
    }

    $check_ordered=array ( 0 => 1, 1 => 2, )

  8. #8
    La form invia al PHP il seguente array:

    Codice PHP:
    $ord = array ( => ''=> '1'=> '2', ); 
    mentre tu vorresti ottenere che cosa?

  9. #9
    Praticamente io ho un array che contiene l'ordine in cui sono selezionate le checkbox
    $_POST['orderlist']=array ( 0 => '', 1 => '1', 2 => '2', )

    e poi gli ID della CheckBox
    $_POST['objectlist']=array ( 0 => '13', 1 => '12', )

    io dopo un ordinamento degli ID di Chechbox in base a il primo array che contiene l'ordine.
    praticamente in questo caso:
    array ( 0 => '13', 1 => '12', )

  10. #10

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.