problema con le sessioni

asevenx

Utente Attivo
7 Nov 2009
312
0
16
Salve, sto creando un sito in php con un sistema di login ma mi appare il seguente errore:

A session had already been started - ignoring session_start() in ... on line 4

inoltre, in fondo pagina appare anche questo errore:

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

Qualcuno sa dirmi cosa significa? Grazie a tutti
 

asevenx

Utente Attivo
7 Nov 2009
312
0
16
Il messaggio di errore fa riferimento alla seguente pagina.

PHP:
<?php
//apro la sessione in cui salvare i dati del login
session_start();
error_reporting (0); 
ini_set('display_error', '0');

include("edizione.php");
?>

<html>
<head>

	<link href="css/style.css" rel="stylesheet" type="text/css">

</head>

<body marginheight="0" marginwidth="0">

<?php
	
//repero i dati...
$id = $_SESSION['id'];
$avatar = $_SESSION['avatar'];
$password = $_SESSION['password']= trim($_POST['password']);
$nome = $_SESSION['nome'] = trim($_POST['nome']);

$DB_tabella = "utenti";

//connessione e invio al DB
$DB_connessione = mysql_connect($DB_host,$DB_user,$DB_password) or die("Connessione DB fallita"); 
mysql_select_db($DB_name,$DB_connessione) or die("Selezione DB fallita");

//se l'utente inserisce i dati
if ($nome != "" || $password != ""){

//cripto la password
$criptata = md5($password);

//visualizza tutti i record nel DB
$query = "SELECT * FROM $DB_tabella WHERE nome = '$nome' AND pass = '$criptata'";
$result = mysql_query($query, $DB_connessione) or die('Errore...pannello di controllo');
$righe = mysql_num_rows($result);

//verifico che i dati inseriti dall'utente siano presenti nel database
	if ($righe > 0){

//ciclo while per visualizzare i dati estratti dal database
		while($resrow = mysql_fetch_row($result))
		{
			$USER_nome = addslashes($resrow[1]);
			$USER_avatar = addslashes($resrow[3]);

?>
	<form name='commenta' method='post' action='commento.php'>
		<div class="messaggio">Benvenuto <?php echo $USER_nome; ?>!</div>
		<div class="cella1">
            	<input readonly='readonly' name='nome' style="text-align:center" class="news_sottotesto" value='<?php echo $_SESSION['nome']; ?>' />
                <img class="avatar" src="<?php echo $USER_avatar; ?>" />
        </div>		
        <div rowspan ="2" class="cella2">
            	<textarea style=" margin:inherit" name="mex" class="casella">Lascia un commento...</textarea>
                <input type='text' style='display: none' name='data' readonly='readonly' value='<?php echo date("y/m/d");?>'>
                <input type='text' style='display: none' name='ora' readonly='readonly' value='<?php echo date("H:i");?>'>
        </div>

		<div class="cella3">
            <input class="bottone" type='submit' name='accedi' value='Invia!'>
            <input class="bottone" type='reset' name='cancella' value='Cancella'> 
        </div>
	</form>

<?php
		}

//nel caso in cui nome utente o password fossero errati		
	} else {
?>	

	<form name='commenta' method='post' action='index.php'>

		<div class="messaggio">Effettua il login per inserire un commento</div>
		<div class="cella4">
        	<div class="cella5">Username: </div>
			<div><input type="text" name="nome" style="width:123px;"></div>
			<div class="cella5">Password: </div>
			<div><input type="password" name="password" style="width:123px;"></div><br>
            <div class="cella7"><input type='submit' class="bottone" name='accedi' value='Invia!'></div>
       	</div>                
		<div class="cella6">
			<span>Nuovo utente? <br /><a class="link_white" href="registrati.php">Registrati</a></span>
			<span class="msg">Nome utente o password errati</span>
		</div>

	</form>

<?php	
		}

//nel caso l'utente non abbia inserito i propri dati (stato iniziale)		
} else {
?>

	<form name='commenta' method='post' action='index.php'>

		<div class="messaggio">Effettua il login per inserire un commento</div>
		<div class="cella4">
        	<div class="cella5">Username: </div>
			<div><input type="text" name="nome" style="width:123px;"></div>
			<div class="cella5">Password: </div>
			<div><input type="password" name="password" style="width:123px;"></div><br>
            <div class="cella7"><input type='submit' class="bottone" name='accedi' value='Invia!'></div>
       	</div>                
		<div class="cella6">Nuovo utente? <br /><a class="link_white" href="registrati.php">Registrati</a></div>

	</form>	
	
<?php
}
?>

</body>
</html>

Ci tengo a precisare che però non incide sulla funzionalità del sito quindi potrebbe essere ignorato, e per questo ho aggiunto error_reporting (0); ma viene comunque visualizzato.

Preciso inoltre che il codice che ho postato fa riferimento ad una pagina inserita in home page attraverso include. Non so se centri qualcosa, ma forse potrebbe essere d'aiuto saperlo.
 
Ultima modifica:

giamma

Utente Attivo
4 Mag 2005
111
0
0
ha la session.auto_start () o qualcosa di simile a on? e poi stai lavorando in locale?
 

asevenx

Utente Attivo
7 Nov 2009
312
0
16
Salvo Salvi
hai controllato se in edizione.php non cè un altra session_start()?

no, non c'è.. è semplicemente una pagina creata con i dati del database

giamma
ha la session.auto_start () o qualcosa di simile a on? e poi stai lavorando in locale?

si, lavoro in locale.. ora provo a metterlo online. Scusami l'ignoranza, che cos'è session.auto_start () e on?

Inoltre volevo chiedere, senza aprire una nuova discussione se possibile, i dati che vengono salvati nelle sessioni non vengono ricordati quando cambio pagina, come faccio a trasportare i dati in tutte le pagine del sito? grazie
 

giamma

Utente Attivo
4 Mag 2005
111
0
0
ti ho chiesto se lavori in locale perchè sono convinto che mettendolo online il problema si risolvi, session.auto_start serve a dire se si avvia un modulo di sessione in automatico mmmhhh non sò se sono stato chiaro (non sò come spiegartelo) cmq normalmente il suo valore è 0 se non è cosi potrebbe essere da quello il motivo dell'errore. I dati di sessione normalmente vengono trasportati con la variabile d'ambiente $_SESSION[chiave]= valore nelle altre pagine hai messo session_start(); poi le varie variabili d'ambiente es:

PHP:
session_start();
$_SESSION[chiave];// la sessione deve avere il nome dell'array utilizzato nella pagina precedente ovviamente non utilizzi = perche l'arrey lo avevi settato prima

//io poi fare una prova 
echo($_SESSION[chiave]);

spero di essere stato abbastanza chiaro senò fammi sapere ciao.
 
Ultima modifica:
Discussioni simili
Autore Titolo Forum Risposte Data
T PROBLEMA CON SESSIONI PHP 3
L problema array con le sessioni PHP 1
R problema con le sessioni PHP 2
S Problema con sessioni PHP 4
I Problema con le sessioni PHP 2
P Problema con l'uso delle sessioni... PHP 4
P Problema con sessioni e aggiornamento profilo PHP 21
P Problema con sessioni PHP 10
M problema con le sessioni e get PHP 6
A problema con le sessioni PHP 19
S Problema con le sessioni PHP 14
F Rilanci di Eccezioni e Problema con le Sessioni PHP 1
E Problema con inserimenti di Link & sessioni PHP 6
P PRoblema con le sessioni PHP 1
metalgemini Problema con sessioni PHP 1
Sergio Unia Problema con gli eventi del mouse su una data table: Javascript 2
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
T PROBLEMA CON ARRAY PHP 8
L problema con query select PHP 2
R Problema query con ricerca id numerico PHP 2
F Problema con risposta PHP 0
S problema con recupero dati tabella mysql PHP 2
Z Problema con il mio tp-l i nk Reti LAN e Wireless 1
L Problema RAM con Tomcat 8 Apache 0
napuleone problema con sort e asort PHP 4
Z Problema con INT MySQL PHP 1
Z Problema database MySQL con XAMPP PHP 0
M Problema con controllo form in real time jQuery 6
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
G Problema con Get page PHP 4
P Problema con require once PHP 6
P Problema con i package Java 1
A Problema login con Safari PHP 14
F INDESIGN: problema esportazione esecutivo per la stampa con foto B/N Webdesign e Grafica 1
S problema con css bootstrap3 HTML e CSS 4
M .load() problema con caricamenti dinamici di js Javascript 0
G Problema ------- con Query PHP 1
G Problema con Query PHP 1
T problema con select dinamica con jquery Javascript 0
S Problema con spazi bianchi HTML e CSS 5
A PROBLEMA: insert mysqli con dati Tagsinput Presentati al Forum 0
Tommy03 Problema con z-index HTML e CSS 3
M Problema inserimento parole con apostrofo nel db PHP 5
C Problema con dati meteo xml XML 1
S Problema con infrarossi videocamera IP Cam e Videosorveglianza 1
V Problema con librerie allegro5 c++ C/C++ 1
M Problema con php per calcolo costo percentuale PHP 7
S Problema con mysqli_num_rows PHP 18
grgfede Problema javascript con aruba Javascript 1
M Problema con visibility e radio button Javascript 2

Discussioni simili