2013-09-27 17 views
5

Sembra che ci sia un problema con le versioni PHP precedenti e più di 1000 campi di input in un modulo (see this question).C'è un limite come max_input_vars nelle versioni precedenti alla 5.3.9?

Se corro un web server con una versione più vecchia di PHP, c'è un limite al numero massimo di elementi del modulo in (un livello di annidamento) come esso è controllata dal php.inidirective max_input_vars da PHP 5.3.9?

Oppure c'è senza limite nelle versioni precedenti?

Cosa succede se imposto questa variabile comunque nelle versioni precedenti in php.ini o .htaccess?

Ho notato che sul mio server eseguo PHP 5.3.3-7 + squeeze17 che ha già la direttiva max_input_vars.

Come si sono comportati esattamente le versioni precedenti?

risposta

1

Sembra che ci sia un bug nelle versioni più vecchie:

https://bugs.php.net/bug.php?id=65778

anche se puoi modificare la direttiva in php.ini e il cambiamento è mostrato correttamente in phpinfo(), ha nessun effetto.

Comportamento: tutte le variabili superiori a 1000 vengono ignorate

testati in PHP 5.3.3-7 + squeeze17 senza modulo Suhosin

Una possibile soluzione: compact all form-data with javascript

-1

Credo che il problema non è il numero dei tuoi campi, penso che il totale dei dati che invii sia troppo.

C'è una direttiva php.ini che limita la quantità di dati che è possibile inviare in una richiesta di posta (controllare: post_max_size).

Ma non è possibile modificare post_max_size durante il runtime (poiché questo valore viene controllato prima della prima riga di file php durante la fase di input di php).

tuo Esistono diversi modi per modificare questo valore:

  1. In Webserver Config
  2. in un file .htaccess

con il seguente codice:

php_value post_max_size 512M # set maximum post data to 512 MB 
  1. in il tuo php globale.ini
  2. nella vostra users.ini (se è configurato)

con il seguente codice:

post_max_size = 512M 
+0

Sono consapevole della direttiva post_max_size e i tuoi suggerimenti sono tutti corretti, ma non è collegato alla mia domanda. Ho un modulo con oltre 1000 radiobutton, che potrebbe essere difficilmente di pochi MB. Voglio davvero conoscere la variabile ** max_input_vars ** – rubo77

+1

Siamo spiacenti, ma la tua domanda non fornisce informazioni sul tipo di elementi del modulo di cui stai parlando. Ho appena risposto: 'non c'è ** nessun limite ** per il numero di campi in PHP 5.3.3 ma ha un'altra limitazione che può dare un limite per input_vars' – Radon8472

Problemi correlati