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

    Problema con POST e ARRAY

    Ciao a tutti. Spero che qualcuno abbia già affrontato questo problema e mi possa dare una mano.

    Ho due pagine php. Nella prima ho una serie di records caricati dinamicamente in una tabella, con un checkbox ogni record, per consentire la selezione. Da questa pagina viene richiamata un'altra pagina, nella quale elaboro i records selezionati.
    La tecnica è quella di creare un array con tutti i valori nel campo "checkbox" e passarla alla pagina successiva per l'elaborazione.
    Funziona tutto, almeno così credevo, fino a che mi hanno fatto notare che se i records sono più di 1000, i records oltre questa cifra vengono ignorati.
    Così, passando 5000 records, ne vengono elaborati solo 1000.

    Vi metto il codice qui sotto:
    Chiamante:
    Codice PHP:
    echo "    <tr BGCOLOR=".$bgrcol.">";
    echo '     <center>';
    echo '        <td ALIGN="CENTER" VALIGN="MIDDLE">';
    echo "             " .$row['COGNOME']. "";
    echo '        </td>';    
    echo '        <td ALIGN="CENTER" VALIGN="MIDDLE">';
    echo "             " .$row['NOME']. "";
    echo '        </td>';    
    echo '        <td ALIGN="CENTER" VALIGN="MIDDLE">';
    echo "             " .$row['recipients']. "";
    echo '        </td>';    
    echo '        <td ALIGN="CENTER" VALIGN="MIDDLE">';
    echo "             " .substr($row['msg'], 0, 50). "";
    echo '        </td>';    
    echo '        <td ALIGN="CENTER" VALIGN="MIDDLE">';
    ?>
    <input type="checkbox" name="selrec[]" value="<?php echo $row['ID']; ?>" checked />
    <?php
    echo '        </td>';    
    echo 
    '     </center>';
    echo 
    '    </tr>';
    }
    Chiamato:
    Codice PHP:
    session_start();
    $select             $_POST['selrec'];

      
    // Applica selezione

        
    $N count($select);
    //    echo 'selezionati:'.$N;
        
        
    for($i=0$i $N$i++)
        {
                           
    $idrec=$select[$i];
    //                        echo 'idrec:'.$idrec;

                           // preparo la query
                           
    $query "UPDATE RP_invio SET
                                     sel='1'
                                     WHERE account='
    $user'
                                     AND ID='
    $idrec'";    

                            
    // lancio la query
                            
    $result mysql_query($query);

                            
    // controllo l'esito
                            
    if (!$result) {
                                    die(
    "Errore nella query $query: " mysql_error());
                            }
            
        } 
    Grazie
    Ciao

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    636
    forse superi il limite imposto dal parametro di configurazione post_max_size

  3. #3
    Grazie per le risposte:

    @raven74: ho verificato con il count ed effettivamente arrivano 999 elementi nell'array.
    Grazie per il suggerimento sulla query, ci provo!

    @longilineo: ho trovato anche io in giro questa spiegazione e facendo il phpinfo effettivamente ho trovato "post_max_size=48M". Boh? 48 mega? Non basteranno? Si può eventualmente fare un override con ini_set?

    Grazie
    Ciao
    Piero

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    636
    no, purtroppo puoi farlo solo da .htaccess o php.ini.

  5. #5
    Grazie cari. Ho provato con ini_set su max_input_vars ma non mi ha cagato di pezza.
    Contatto il gestore e vediamo cosa si può fare con php.ini.

    Ciao & grazie ancora.
    Piero

  6. #6
    Vediamo se il gestore mi aumenta il valore di quel parametro. Sennò un'altra strada la troviamo!
    Ciao

  7. #7
    Ok il gestore ha fatto la modofica e ora funziona tutto.
    Grazie per l'aiuto e non avevo dubbi che qui ne avrei avuto, e di ottima qualità!
    Ciao
    Piero

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.