Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: Warning: Unknown():

  1. #1
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449

    Warning: Unknown():

    Da che cosa è generato questo warning?
    Come posso risolverlo senza modificare la configurazione del php?


    codice:
    Warning: Unknown(): Your script possibly relies on a session
    side-effect which existed until PHP 4.2.3. Please be advised that the
    session extension does not consider global variables as a source of
    data, unless register_globals is enabled. You can disable this
    functionality and this warning by setting session.bug_compat_42 or
    session.bug_compat_warn to off, respectively. in Unknown on line 0
    S'i fosse foco, arderei 'l mondo

  2. #2
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568
    ini_set("session.bug_compat_42", "0");
    ini_set("session.bug_compat_warn", "0");
    "Nei prossimi tre anni col mio governo vogliamo vincere anche il cancro, che colpisce ogni anno 250.000 italiani e riguarda quasi due milioni di nostri concittadini"

  3. #3
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    così modifico le impostazioni del php.
    Vorrei evitare di usare ini_set dappertutto.

    C'è un altro modo?
    Da che cosa è generato questo warning?
    Come posso risolverlo senza modificare la configurazione del php?
    S'i fosse foco, arderei 'l mondo

  4. #4
    Stai forse usando delle variabili superglobali con register_globals in ON?

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    uso delle variabili di sessione come ho già fatto in altre pagine

    codice:
      session_start();
      $numero = $_SESSION["numero"];
    register_globals è Off
    S'i fosse foco, arderei 'l mondo

  6. #6
    ; PHP 4.2 and less have an undocumented feature/bug that allows you to
    ; to initialize a session variable in the global scope, albeit register_globals
    ; is disabled. PHP 4.3 and later will warn you, if this feature is used.
    ; You can disable the feature and the warning separately. At this time,
    ; the warning is only displayed, if bug_compat_42 is enabled.
    se hai una versione php superiore alla 4.2 e' giusto disabilitare le due minghiole buffe come gia' ti ha suggerito Chris...


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    OK.

    Però perchè il warning mi esce solo su quella pagina (è quella con più variabili di sessione)?
    Ne ho altre molto simili ma il warning in quelle non esce.
    S'i fosse foco, arderei 'l mondo

  8. #8
    Originariamente inviato da cik
    OK.

    Però perchè il warning mi esce solo su quella pagina (è quella con più variabili di sessione)?
    Ne ho altre molto simili ma il warning in quelle non esce.
    E chi lo sa? ... non si e' visto una riga di script...


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    Utente di HTML.it L'avatar di cik
    Registrato dal
    Jul 2003
    Messaggi
    449
    Originariamente inviato da cik
    uso delle variabili di sessione come ho già fatto in altre pagine

    codice:
      session_start();
      $numero = $_SESSION["numero"];
    register_globals è Off

    sono una ventina di righe in cui le variabili di sessione sono usate così. Che altro vuoi vedere dello script? Una volta messi i valori nelle variabili ed estratti i dati dal db viene visualizzata la pagina HTML ma della sessione o di variabili superglobali non viene più toccato niente.
    quallo che mi chiedo è sempre lo stesso: quel warning in quali casi viene visualizzato?
    S'i fosse foco, arderei 'l mondo

  10. #10
    Originariamente inviato da cik
    sono una ventina di righe in cui le variabili di sessione sono usate così. Che altro vuoi vedere dello script? Una volta messi i valori nelle variabili ed estratti i dati dal db viene visualizzata la pagina HTML ma della sessione o di variabili superglobali non viene più toccato niente.
    quallo che mi chiedo è sempre lo stesso: quel warning in quali casi viene visualizzato?
    Si trattava di un bug presente nelle versioni 4.2 e precedenti a cui avevano posto rimedio con quel paio di parametri nel php.ini (che attivano una patch ovviamente).

    Ora l'avviso ti dice che quei parametri non sono piu' necessari, mentre invece sono ancora attivi nel tuo php.ini. Il fatto che si attivi su quella pagina e non su altre potrebbe derivare dalla composizione della pagina stessa, sul dove e come le variabili sono valorizzate e prelevate.

    Di fatto uno o piu' di quelle variabili di sessione attiva la patch di correzione.
    ; At this time,
    ; the warning is only displayed, if bug_compat_42 is enabled.
    Disabilita bug_compat_42 nel php.ini. Cosa che ti aveva gia' indicato subito Chris...


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.