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

    versioni php differenti

    ciao a tutti,

    sto testando lo script sulle sessioni di questo articolo

    sul server in locale, easyphp con versione php 4.3.10 ho errori di undefined index e
    Cannot modify header information - headers already sent by ...


    mentre sul webserver "vero" con php 4.2.2 tutto fila liscio.

    gli script ovviamente sono identici.

    dipende dalle diverse verioni php?
    Come faccio a non avere gli errori sulla versione in locale?

    grazie

  2. #2
    Si. Io ti consiglio di usare anche la visualizzazione dei notice.

  3. #3
    Utente di HTML.it L'avatar di chris
    Registrato dal
    Sep 1999
    Messaggi
    1,568

    Re: versioni php differenti

    [supersaibal]Originariamente inviato da eloderma
    Come faccio a non avere gli errori sulla versione in locale?[/supersaibal]
    evitando di commetterli

    Se escono fuori dei notice evidentemente c'è un problema nel codice, risolvilo e non avrai più la visualizzazione dei notice stessi.
    "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"

  4. #4
    Oltre al fatto che anche se i notice non sono degli errori indicano cmq qualcosa che non va. Quindi anche se su alcune installazioni funziona, lo stesso codice potrebbe non funzionare su altre installazioni.
    Risultato? Codice errato, non portabile e lento.
    E scusate se è poco!

  5. #5
    ok e come si correggono gli undefined?

    lo so... lo so...

  6. #6

  7. #7
    Undefined... significa che la variabile che stai tentando di utilizzare non esiste.

    Per risolvere il problema si utilizza la funzione isset() che controlla se una variabile esiste: restituisce true o false a seconda che la variabile esista o meno. Con un semplice if, quindi, puoi evitare ogni problema:

    Codice PHP:
    if (isset($var))
      {
        echo 
    'La variabile "' $var '" esiste';
      }
    else
      {
        echo 
    'la variabile passata non esiste';
      } 
    Per l'altro errore è dovuto al fatto che è stato già inviato un output al browser. La funzione start_session() necessita che nessun output venga inviato al client prima della sua esecuzione: se metti la funzione in cima alla pagina, prima di qualsiasi cosa, vedrai che l'errore non ti verrà più segnalato. ciao!

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.