Domanda

Sto cercando di ospitare un sito Web PHP che mi è stato dato. Vedo questo avviso:

  

Avviso: sconosciuto: possibilmente il tuo script   si basa su un effetto collaterale della sessione che   esisteva fino a PHP 4.2.3. Per favore, sii   avvisato che l'estensione della sessione   non considera le variabili globali come   una fonte di dati, a meno che   register_globals è abilitato. Puoi   disabilita questa funzionalità e questa   avviso impostando   session.bug_compat_42 o   session.bug_compat_warn su off,   rispettivamente. in Sconosciuto on line 0

Cosa significa? Come potrei rintracciare l'origine di questo problema all'interno del codice?

È stato utile?

Soluzione

sostanzialmente hai una variabile con lo stesso nome della tua sessione. es:

sostanzialmente hai una variabile con lo stesso nome della tua sessione. es:

ini_set('session.bug_compat_warn', 0);
ini_set('session.bug_compat_42', 0);

che riprodurrà questo errore. puoi impedire a PHP di cercare variabili esistenti e avvisarti di loro aggiungendo queste righe al tuo script:

<*>

questi valori possono essere impostati anche in php.ini o .htaccess

SESSION['var1'] = null; $var1 = 'something';

che riprodurrà questo errore. puoi impedire a PHP di cercare variabili esistenti e avvisarti di loro aggiungendo queste righe al tuo script:

<*>

questi valori possono essere impostati anche in php.ini o .htaccess

Altri suggerimenti

Qui sembrano esserci alcune possibilità problematiche:

http://www.spiration.co.uk/post/1231/Your-script-possibly-relies-on-a-session-side-effect

dice che casi come questo:

Qui sembrano esserci alcune possibilità problematiche:

http://www.spiration.co.uk/post/1231/Your-script-possibly-relies-on-a-session-side-effect

dice che casi come questo:

//Start of script

Qui sembrano esserci alcune possibilità problematiche:

http://www.spiration.co.uk/post/1231/Your-script-possibly-relies-on-a-session-side-effect

dice che casi come questo:

Qui sembrano esserci alcune possibilità problematiche:

http://www.spiration.co.uk/post/1231/Your-script-possibly-relies-on-a-session-side-effect

dice che casi come questo:

<*>

attiverà l'avvertimento.

Inoltre, interpreto il contenuto di questo bug php: http: //bugs.php. net / bug.php? id = 41540 significa che questo errore può verificarsi anche quando si assegna una variabile al superglobal della sessione che non è ancora inizializzata, ad es.

<*>SESSION['firstname']=

Qui sembrano esserci alcune possibilità problematiche:

http://www.spiration.co.uk/post/1231/Your-script-possibly-relies-on-a-session-side-effect

dice che casi come questo:

<*>

attiverà l'avvertimento.

Inoltre, interpreto il contenuto di questo bug php: http: //bugs.php. net / bug.php? id = 41540 significa che questo errore può verificarsi anche quando si assegna una variabile al superglobal della sessione che non è ancora inizializzata, ad es.

<*>REQUEST['firstname'];

attiverà l'avvertimento.

Inoltre, interpreto il contenuto di questo bug php: http: //bugs.php. net / bug.php? id = 41540 significa che questo errore può verificarsi anche quando si assegna una variabile al superglobal della sessione che non è ancora inizializzata, ad es.

<*>SESSION['bob'] = $bob;

attiverà l'avvertimento.

Inoltre, interpreto il contenuto di questo bug php: http: //bugs.php. net / bug.php? id = 41540 significa che questo errore può verificarsi anche quando si assegna una variabile al superglobal della sessione che non è ancora inizializzata, ad es.

<*>SESSION['firstname']=

Qui sembrano esserci alcune possibilità problematiche:

http://www.spiration.co.uk/post/1231/Your-script-possibly-relies-on-a-session-side-effect

dice che casi come questo:

<*>

attiverà l'avvertimento.

Inoltre, interpreto il contenuto di questo bug php: http: //bugs.php. net / bug.php? id = 41540 significa che questo errore può verificarsi anche quando si assegna una variabile al superglobal della sessione che non è ancora inizializzata, ad es.

<*>REQUEST['firstname'];

attiverà l'avvertimento.

Inoltre, interpreto il contenuto di questo bug php: http: //bugs.php. net / bug.php? id = 41540 significa che questo errore può verificarsi anche quando si assegna una variabile al superglobal della sessione che non è ancora inizializzata, ad es.

<*>

Questa è una buona informazione per scoprire cosa sta causando l'avvertimento, ma consiglierei di NON chiudere gli avvertimenti menzionati da Owen. Queste funzioni di runtime sono rimosse in PHP 5.4.0 e lo sviluppatore dovrebbe entrare nel pratica di evitare tale utilizzo delle variabili.

Per risolvere questo problema, potrebbe essere una seccatura da parte degli sviluppatori, ma se hai

Questa è una buona informazione per scoprire cosa sta causando l'avvertimento, ma consiglierei di NON chiudere gli avvertimenti menzionati da Owen. Queste funzioni di runtime sono rimosse in PHP 5.4.0 e lo sviluppatore dovrebbe entrare nel pratica di evitare tale utilizzo delle variabili.

Per risolvere questo problema, potrebbe essere una seccatura da parte degli sviluppatori, ma se hai

Questa è una buona informazione per scoprire cosa sta causando l'avvertimento, ma consiglierei di NON chiudere gli avvertimenti menzionati da Owen. Queste funzioni di runtime sono rimosse in PHP 5.4.0 e lo sviluppatore dovrebbe entrare nel pratica di evitare tale utilizzo delle variabili.

Per risolvere questo problema, potrebbe essere una seccatura da parte degli sviluppatori, ma se hai

Questa è una buona informazione per scoprire cosa sta causando l'avvertimento, ma consiglierei di NON chiudere gli avvertimenti menzionati da Owen. Queste funzioni di runtime sono rimosse in PHP 5.4.0 e lo sviluppatore dovrebbe entrare nel pratica di evitare tale utilizzo delle variabili.

Per risolvere questo problema, potrebbe essere una seccatura da parte degli sviluppatori, ma se hai

<*>

rinomina la sessione in

<*>

O viceversa, purché il nome della sessione e il nome della variabile siano diversi. Pensala in questo modo: quando esegui l'upgrade all'ultima build, dovrai comunque eseguire il debug del tuo codice.

SESSION["user"] $user;

rinomina la sessione in

<*>

O viceversa, purché il nome della sessione e il nome della variabile siano diversi. Pensala in questo modo: quando esegui l'upgrade all'ultima build, dovrai comunque eseguire il debug del tuo codice.

SESSION["sessuser"];

rinomina la sessione in

<*>

O viceversa, purché il nome della sessione e il nome della variabile siano diversi. Pensala in questo modo: quando esegui l'upgrade all'ultima build, dovrai comunque eseguire il debug del tuo codice.

SESSION["user"] $user;

rinomina la sessione in

<*>

O viceversa, purché il nome della sessione e il nome della variabile siano diversi. Pensala in questo modo: quando esegui l'upgrade all'ultima build, dovrai comunque eseguire il debug del tuo codice.

Quando si apportano modifiche a .htaccess ini_set non funziona. Dovrai farlo come:

php_flag session.bug_compat_42 0
php_flag session.bug_compat_warn 0

nel mio caso, php.ini cambia da acceso a spento

in questo modo:

session.bug_compat_42 = off
session.bug_compat_warn = off

se non funziona, riavvia apache

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top