Messaggio di errore causa session_start

nim

Utente Attivo
11 Ott 2011
96
0
0
salve a tutti ,
ho un problema anche questa volta però ora sono più preoccupato del solito!
Su altervista va tutto bene ma ora che su register ho comprato il dominio+spazio web , si è incasinato tutto (passatemi i termini)!
Funziona così: ad ogni pagina protetta c'è un rimando a una authentication.class.php che mi controlla se l'utente si è loggato oppure no;
su altervista funzionava tutto ma ora se non mi sono loggato non mi reindirizza alla pagina di login, bensì mi da questi due errori:
HTML:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /htdocs/public/www/seidentro.php:2) in /htdocs/public/www/authentication.class.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /htdocs/public/www/seidentro.php:2) in /htdocs/public/www/authentication.class.php on line 2
Che vuol dire?cioè perchè prima andava e ora no?
Confido nella solita disponibilità,
Grazie arrivederci



EDIT: aggiungo che anche se sono loggato e entro in una pag protetta vedo quest'errore:
HTML:
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /htdocs/public/www/lavagna_index.php:2) in /htdocs/public/www/authentication.class3.php on line 3
 
Ultima modifica:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
secondo me hai cambiato (forse senza accorgertene) qualcosina.
l'errore è dovuto al fatto che prima della chiamata di session_start() hai un uotput html (può essere anche un semplice spazio).
poi stai attento (anche se non sono esperto nell'uso delle classi), da quanto ho capito tu hai la sesseion_star() dentro la classe authentication.class.php, giustamente alla riga 2 subito dopo il tag php,
ma per usarla la devi includere nel file seidentro.php, quindi farai (credo) in seidentro qualcosa del genere
PHP:
<?php
require "authentication.class.php";//o include
//poi l'istanzierai ecc..
?>
da qualche parte (ahime la memoria fa acqua) ho letto che il require o l'include sono come uot html, da qui l'errore, se poi prima del require hai anche solo una riga vuota l'uot è quello di sicuro

p.s.
io forse sbaglio ma non uso mai session_star() o similari, che abbisognano di essere i primi, nei file da includere
 

nim

Utente Attivo
11 Ott 2011
96
0
0
ma e quindi come dovrei risolvere?
perchè ho tolto eventuali spazi ma nn cambia :(
vengone gli errori

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /htdocs/public/www/seidentro.php:2) in /htdocs/public/www/authentication.class.php on line 3

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /htdocs/public/www/seidentro.php:2) in /htdocs/public/www/authentication.class.php on line 3

Warning: Cannot modify header information - headers already sent by (output started at /htdocs/public/www/seidentro.php:2) in /htdocs/public/www/authentication.class.php on line 45


:(
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
se la session_start() è nel file della classe prova a toglierla (o commentarla, meglio) e mettile nel file che include

PHP:
<?php
session_start();
//....
require "authentication.class.php";//o include
//poi l'istanzierai ecc..
?>
 

nim

Utente Attivo
11 Ott 2011
96
0
0
grazie , ho risolto aprendo la sessione prima di richiamare la classe..
però non mi spiego una cosa; perchè su altervista andava bene?
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Su Altervista va bene perché la sua configurazione di PHP non dovrebbe rendere visibili i Warning.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao

Su Altervista va bene perché la sua configurazione di PHP non dovrebbe rendere visibili i Warning.

non so se andava bene cioè lo script funziasse, secondo me non avrebbe dovuto funzionare.
es. se metto un silent su un include e non trova il file da includere non mostra l'errore, ma lo script dovrebbe piantarsi (o fa quello che vuole, ma non quello che vorresti)

p.s.
secondo me uno script attentamente debaggato non dovrebbe dare warning (siano questi attivi che disattivi)
 

nim

Utente Attivo
11 Ott 2011
96
0
0
certo però garantisco che funzionava tutto , mentre su register alcune volte si bloccavano i processi addirittura..
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
non conosco ne altervista ne register, quindi con precisione non ti so dire. ma mi sembra strano che altervista abbia un php personale che non dia errore.
una cosa che dimenticavo nei perimi post
quando parlo che anche uno spazio può dare errore non intendo uno spazio interno a php
es.
PHP:
<?php

//lo spazio sopra (e anche sotto) è ininfluente
session_start();

?>
ma quello che si possono trovare prima del tag <?php, es

PHP:
<!--qui sopra ho lo spazio che da errore -->
<?php
session_star();
//...
?>
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
ciao
non so se andava bene cioè lo script funziasse, secondo me non avrebbe dovuto funzionare.
es. se metto un silent su un include e non trova il file da includere non mostra l'errore, ma lo script dovrebbe piantarsi (o fa quello che vuole, ma non quello che vorresti)
p.s.
secondo me uno script attentamente debaggato non dovrebbe dare warning (siano questi attivi che disattivi)

Dipende da cosa c'è nell'include, è chiaro che se per esempio contiene dei parametri per la connessione ad un db è presumibile che l'applicazione non funzioni, ma ciò dipende dalla mancata inclusione. Tiene conto che essenzialmente un warning, a differenza di un fatal error, permette comunque l'esecuzione di uno script.
Prova per esempio a vedere cosa succede se sostituisci un include con un require.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
si hai ragione, ma io intendevo
PHP:
@include "pinco.php";
se non trova pinco.php non ti visualizza il warning, ma l'errore c'è comunque
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
ciao
si hai ragione, ma io intendevo
PHP:
@include "pinco.php";
se non trova pinco.php non ti visualizza il warning, ma l'errore c'è comunque

La presenza o meno della notifica non influisce sull'esecuzione dello script; ripeto (noiooooso) prova a mettere un require "silenziato" su un inclusione non determinante per l'esecuzione, poi giudica tu se l'effetto è lo stesso dell'include.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
La presenza o meno della notifica non influisce sull'esecuzione dello script; ripeto (noiooooso) prova a mettere un require "silenziato" su un inclusione non determinante per l'esecuzione, poi giudica tu se l'effetto è lo stesso dell'include.
ma è quello che sto dicendo cioè lo script o si pianta subito (caso require) o fa quello che vuole (caso include) e può piantarsi in seguito.
nel caso dell'include è evidente che dipende anche da cosa devo includere, se è una semplice visualizzazione al massimo non la vedo, se contiene invece la definizione di una funzione si pianta appena cerco di usarla.
come detto non conosco alter ne register però nel caso di altervista il fatto che non dia i warning non mi sembra una bella cosa (soprattutto in fase di debug)
per es.
<?php
echo "pinco"; //out html
session_start();
//altre ottomila righe di codice
echo "risultato=".$aa/$_SESSION['numero'];
//...
?>
se vedo il warnin capisco subito che l'errore è alla riga session_start, se non ho i warning lo sript si pianta quando cerco di fare la divisione
 

nim

Utente Attivo
11 Ott 2011
96
0
0
comunque alla fine lo script e tutto funzionavano quindi ho messo il silent e ho risolto...
anche se devo dire che mi secca pensare al fatto di avere errori (anche se invisibili) nelle mie pagine..
 
Discussioni simili
Autore Titolo Forum Risposte Data
P [WordPress] Messaggio di errore in file style.css WordPress 0
M Messaggio di errore su pulsante update PHP 0
J Password reset messaggio di successo o di errore PHP 0
L Problema messaggio d'errore -Warning: mysqli_num_rows() expects parameter 1 to be mysqli_ etc etc... PHP 2
P messaggio errore o benvenuto in php PHP 1
B form informazioni - messaggio d'errore PHP 2
G messaggio di errore iscrizione newsletter ASP.NET 2
M Messaggio di errore personalizzato su cliente gia esistente MS Access 2
benfy85 messaggio di errore header PHP 3
J Messaggio di errore... ASP.NET 2
R Messaggio apertura sito WordPress 4
I invia inserisci nome utente invia messaggio PHP 0
R Messaggio presentazione Presentati al Forum 0
Cosina Invio messaggio a mailing list su file txt PHP 9
L Messaggio di un novellino Presentati al Forum 2
B Vorrei inserire una finestra con messaggio ad un history.back PHP 16
P Visual Studio VB.NET Visualizzare un messaggio alla scadenza. .NET Framework 0
otto9due [Javascript] Notification - Browser ( messaggio di notifica browser ). Javascript 0
J messaggio di benvenuto Presentati al Forum 0
A [PHP] Invio messaggio a tutti gli iscritti PHP 2
Christian Tosti Grazie MrWebmaster per il gentile messaggio di benvenuto... Presentati al Forum 0
A [PHP] form messaggio di conferma PHP 2
E [Javascript] Messaggio di avvenuto invio mail non visualizzato Javascript 1
B MYSQL-INVIO EMAIL O MESSAGGIO AVVISO MySQL 0
G Grazie per il gentile messaggio di benveuto :) Presentati al Forum 1
V Messaggio di benvenuto Presentati al Forum 2
S Messaggio Specifico dal DB per i duplicati MySQL 1
Creatt Visualizzare un immagine al mopmento di un messaggio di alert Javascript 7
L Aiuto messaggio di stato PHP 1
G [RETRIBUITO] Inserzionisti forum auto 0,40€ a messaggio Offerte e Richieste di Lavoro e/o Collaborazione 2
R problema con messaggio ringraziamento o altro redirect PHP 5
R messaggio di saluto Presentati al Forum 0
E messaggio di conferma dopo inserimento/modifica/cancellazione righe db PHP 10
A [PHP] Utilizzo frameworks html... messaggio eliminato! PHP 0
P messaggio caricamento in corso Javascript 4
M Messaggio di presentazione Presentati al Forum 1
felino Contact Form 7: calendario e formattazione messaggio WordPress 0
A Prezzo dinamico carrello e messaggio cancellazione Javascript 1
D Problema modulo invio messaggio da sito web PHP 7
A Problema invio messaggio col form PHP 1
felino Contact Form 7: messaggio di conferma sotto il modulo? WordPress 1
Shyson Aggiornare pagina quando c'è un nuovo messaggio PHP 123
M adsmanager e messaggio di verifica email Joomla 0
M messaggio visualizzato in una finestra Javascript 4
R aiuto messaggio vocale phpBB 0
Z Personalizzare il messaggio di avviso sul forum CMS (Content Management System) 3
S Problema con Guesbook: Il messaggio non viene sempre inviato PHP 8
S Form PHP: Messaggio di conferma che compare al caricamento della pagina PHP 11
I Problemi invio messaggio utilizzando la funzione mail() PHP 1
S Stampare un messaggio alla fine del countdown in Javascript Javascript 0

Discussioni simili