Ciao a tutti, sto' cercando di creare una semplice maschera di login per accedere ad una zona riservata del mio sito.
Leggendo sul forum e copiando alcuni esempi credevo di aver creato qualcosa di funzionante ed infatti in locale tutto e' ok. Peccato che appena pubblico le pagine ho i seguenti errori:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /hermes/web08/b972/pow.panaexpo/htdocs/pages/login.php:2) in /hermes/web08/b972/pow.panaexpo/htdocs/pages/login.php on line 27
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /hermes/web08/b972/pow.panaexpo/htdocs/pages/login.php:2) in /hermes/web08/b972/pow.panaexpo/htdocs/pages/login.php on line 27
Warning: Cannot modify header information - headers already sent by (output started at /hermes/web08/b972/pow.panaexpo/htdocs/pages/login.php:2) in /hermes/web08/b972/pow.panaexpo/htdocs/pages/login.php on line 30
Ripeto, in locale funziona, da una pagina all'altra passa la variabile di sessione e mi da' l'accesso se password e user sono corretti, altrimenti mi rimanda al login.
questo e' il codice nella pagina di login:
<?php
include("config.inc.php");
//mi connetto a mysql
$db = mysql_connect($db_host, $db_user, $db_password) or die ("Connessione al database non riuscita");
mysql_select_db($db_name, $db) or die ("Selezione del database non riuscita");
// Convert to simple variables
$user = $_POST['user'];
$password = $_POST['password'];
// check if the user info validates the db
$query = "SELECT * FROM user_admin WHERE user='$user' AND password='$password' ";
$result = mysql_query($query, $db);
$login_check = mysql_num_rows($result);
if($login_check >0){
while($row = mysql_fetch_array($result)){
foreach( $row AS $key => $val ){
$$key = stripslashes( $val );
}
session_start() ;
$_SESSION['Username'] = $user;
header("Location: ../admin/select_newsletter.php");
exit();
}
}else {
?>
//pagina HTML
<?php
//chiudo la connessione con mysql
mysql_close($db) or die ("Impossibile chiudere la connessione con MySQL");
}
?>
Questo il codice nella pagina d'arrivo
<?php
// Controllo accesso
session_start() ;
echo"Sess: $_SESSION[Username]";
if (!isset($_SESSION['Username']))
{
header('location:../pages/index.php');
exit;
}
?>
<html>
<head>
......
Ho fatto diversi tentativi aiutandomi col forum ma senza successo. Cosa sbaglio?
Grazie a tutti