je viens de permettre l'affichage des erreurs sur le site distant, voici le résulta
Pour connexion:
Warning: Cannot modify header information - headers already sent by (output started at /homepages/23/d438409960/htdocs/index.php:47) in /homepages/23/d438409960/htdocs/includes/deconnexion.php on line 10
Warning: Cannot modify header information - headers already sent by (output started at /homepages/23/d438409960/htdocs/index.php:47) in /homepages/23/d438409960/htdocs/includes/deconnexion.php on line 11
Warning: Cannot modify header information - headers already sent by (output started at /homepages/23/d438409960/htdocs/index.php:47) in /homepages/23/d438409960/htdocs/includes/deconnexion.php on line 12
Pour deconnexion:
Warning: Cannot modify header information - headers already sent by (output started at /homepages/23/d438409960/htdocs/index.php:47) in /homepages/23/d438409960/htdocs/includes/connexion.php on line 68
Warning: Cannot modify header information - headers already sent by (output started at /homepages/23/d438409960/htdocs/index.php:47) in /homepages/23/d438409960/htdocs/includes/connexion.php on line 69
Ce qui me parait bizarre, c'est comment ce fait il qu'en local je n'est aucune erreur?
Pour vous aider, voici le script complet de connexion.php et deconnexion.php
pour connexion.php
<?php
if (USERS_ID!=0) erreur(ERR_IS_CO);
else{
if (isset($_GET'action']) && $_GET'action'] == "try") //On est dans la page de formulaire
{
?>
<form method="post" action="./connexion" enctype="multipart/form-data">
<div class="control-group">
<label class="control-label" for="prependedInput"></label>
<div class="controls">
<div class="input-prepend">
<span class="add-on"><i class="icon-white icon-user"></i></span>
<input class="input-large" name="login" size="16" type="text">
</div>
<div class="input-prepend">
<span class="add-on"><i class="icon-white icon-asterisk"></i></span>
<input class="input-large" name="password" size="16" type="password">
<div class="help-block login-remember">
<label class="checkbox">
<input name="souvenir" value="1" type="checkbox"><?php echo $lang_maintien_connexion; ?>
</label>
<input name="connexion" class="btn" value="<?php echo $lang_connecter; ?>" type="submit">
</div>
</div>
<a href="oublie"><?php echo $lang_pass_oublie; ?></a>
</div>
</div>
</form>
<?php
}
if (isset($_POST'connexion']))
{
extract($_POST);
if (empty($login) || empty($password)){ //Oublie d'un champ
alerte_connex($lang_erreur_connexion_message1);
}
else { //On check le mot de passe
$query=$cnx->prepare('SELECT users_id, rank_id, users_name, users_pass, users_verif
FROM t_users
WHERE users_name = :login');
$query->bindValue(':login',$login, PDO::PARAM_STR);
$query->execute() or die ('Erreur SQL');
$data=$query->fetch();
$users_id=$data'users_id'];
$users_pass=$data'users_pass'];
if ($users_pass == encrypt($password)) // Acces OK !
{
//on verrifie que le membre ne soit pas bannis
if ($data'rank_id'] == 1) //Le membre est banni
{
erreur(ERREUR_BAN);
}
if ($data'rank_id'] == 2) //Le membre est banni
{
erreur(ERREUR_ANNONYME);
}
elseif ($data'users_verif'] == 0) //Le membre n'est pas actif
{
erreur(ERREUR_NOT_ACTIF);
}
else //Sinon c'est ok, on se connecte
{
// si on a déja une langue défini, on créer un cookie avec une séssion plus longue
if (!empty($lang) && isset($_COOKIE'lang'])){
$langue_actuelle = $_COOKIE'lang'];
$expire_negatif = time() - 60;
$expire = time() + 365*24*3600;
setcookie('lang', '', $expire_negatif);
setcookie('lang', $langue_actuelle, $expire);
}
$mess_sucess = $lang_succes_connexion_message1.$data'users_name'].$lang_succes_connexion_message2;
sucess($mess_sucess);
/* ** */
$id = 0;
$_SESSION'users_name'] = $data'users_name'];
$_SESSION'rank_id'] = $data'rank_id'];
$_SESSION'users_id'] = $users_id;
if (isset($_POST'souvenir']))
{
$Uid = $users_id;
$key = "xxx";
$SiD=sha1($Uid.$key);
$expire = time() + 365*24*3600;
setcookie('uSiD', $SiD, $expire);
error_reporting(-1);
/* **** */
$query_id=$cnx->prepare('SELECT user_sid
FROM t_user_sid
WHERE users_id = :users_id');
$query_id->bindValue(':users_id',$users_id, PDO::PARAM_INT);
$query_id->execute() or die ('Erreur SQL');
// Si il n'y a pas de donnée
if ($query_id->rowCount()==0){
$query_sid=$cnx->prepare('INSERT INTO t_user_sid
(users_id, user_sid)
VALUES (:users_id, :user_sid)');
$query_sid->bindValue(':users_id',$users_id, PDO::PARAM_INT);
$query_sid->bindValue(':user_sid',$SiD, PDO::PARAM_STR);
$query_sid->execute() or die ('Erreur SQL!');
$query_sid->CloseCursor();
}
$query_id->CloseCursor();
}
echo '<script type="text/javascript">setTimeout(function() {window.location.href="./";},2000);</script>';
}
}
else // Acces pas OK !
{
alerte_connex($lang_erreur_connexion_message2);
}
$query->CloseCursor();
}
}
}
?>
pour deconnexion.php
<?php
$query=$cnx->prepare('DELETE FROM t_online WHERE online_id=:id');
$query->bindValue(':id',USERS_ID,PDO::PARAM_INT);
$query->execute();
$query->CloseCursor();
$langue_actuelle = $_COOKIE'lang'];
$expire_negatif = time() - 60;
$expire_nule = '0';
setcookie('lang', '', $expire_negatif);
setcookie('lang', $langue_actuelle, $expire_nule);
setcookie ('uSiD', '', $expire_negatif);
session_destroy();
sucess($lang_succes_deconnexion_message);
echo '<script type="text/javascript">setTimeout(function() { window.location.href="./"; },2000);</script>';
?>
Vous auriez une idée de ce qu'il faut que je regarde dans les configurations de php.ini afin de réparer ceci?
Merci beaucoup pour votre aide.
Cordialement