WARNING header chez free
Résolu
A voir également:
- WARNING header chez free
- Word 2013 free download - Télécharger - Traitement de texte
- Sketchup free - Télécharger - 3D
- Free office - Télécharger - Suite bureautique
- Zimbra free - Guide
- Bitdefender free - Télécharger - Antivirus & Antimalwares
13 réponses
Ici
Warning: Cannot modify header information - headers already sent by (output started at /mnt/169/sdc/9/f/mywebsite/test/admin/init.php:70) in /mnt/169/sdc/9/f/mywebsite/test/admin/testlogadmin.php on line 38
Le message est clair, il y a un code qui renvoi du html à la ligne 38 tel que echo, print, ou même un code html brut, il faut l'enlever
Warning: Cannot modify header information - headers already sent by (output started at /mnt/169/sdc/9/f/mywebsite/test/admin/init.php:70) in /mnt/169/sdc/9/f/mywebsite/test/admin/testlogadmin.php on line 38
Le message est clair, il y a un code qui renvoi du html à la ligne 38 tel que echo, print, ou même un code html brut, il faut l'enlever
Il y a du texte qui sort avant l'appel à la fonction header().
Si tu es en UTF-8, vérifie que ce soit « sans BOM ».
Si tu es en UTF-8, vérifie que ce soit « sans BOM ».
J'ai vérifié, UFT-8 SANS BOM, mais toujours l'erreur suivante:
Pourtant ça fonctionne parfaitement sous EasyPHP...
Warning: Cannot modify header information - headers already sent by (output started at /mnt/169/sdc/9/f/mywebsite/test/admin/init.php:70) in /mnt/169/sdc/9/f/mywebsite/test/admin/testlogadmin.php on line 38
Pourtant ça fonctionne parfaitement sous EasyPHP...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Alors tu as du texte affiché avant l'appelle à session_start() (ou header(), et ça doit faire pareil avec setcookie()).
D'accord, j'ai pigé pour le session_start(), problème résolu.
Mais toujours un problème avec mon header:
Erreur:
Je vois pas quel problème il y a avec mon header.
Et j'ai ce message quand je passe par mon else de la ligne 35:
Voilà...
Mais toujours un problème avec mon header:
26.if ($row=mysql_fetch_object($res)) 27.{ 28. $loginB=$row->login; 29. $passB=$row->password; 30. $_SESSION['sess_admin'] = "admin"; 31. $statut="admin"; 32. 33. header('location:index_admin.php'); 34.} 35.else 36.{ 37. header('location:log_admin.php'); 38.} 39.?>
Erreur:
Warning: Cannot modify header information - headers already sent by (output started at /mnt/169/sdc/9/f/mysiteweb/test/admin/init.php:70) in /mnt/169/sdc/9/f/mysiteweb/test/admin/testlogadmin.php on line 33
Je vois pas quel problème il y a avec mon header.
Et j'ai ce message quand je passe par mon else de la ligne 35:
Warning: Cannot modify header information - headers already sent by (output started at /mnt/169/sdc/9/f/mysiteweb/test/admin/init.php:70) in /mnt/169/sdc/9/f/mysiteweb/test/admin/testlogadmin.php on line 37
Voilà...
Je comprends pas pourquoi mettre un include ('index_admin.php');
Voilà ma page en entier:
En gros je récupère le login et le mot de passe entré, je récupère le login et le mot de passe dans la base de données, s'il existe je redirige vers l'index, si non, je recharge la page servant à s'identifier.
Voilà ma page en entier:
<?php session_start(); require 'init.php'; if (isset ($_POST['log'])) { $loginA=$_POST['log']; } if (isset ($_POST['mdp'])) { $passA=$_POST['mdp']; } $connect_db = connect(); $req = "SELECT * FROM admin_tab WHERE login='$loginA' and mdp='$passA';"; $res = mysql_query($req,$connect_db); if ($row=mysql_fetch_object($res)) { $loginB=$row->login; $passB=$row->password; $_SESSION['sess_admin'] = "admin"; $statut="admin"; header('location:index_admin.php'); } else { header('location:log_admin.php'); } ?>
En gros je récupère le login et le mot de passe entré, je récupère le login et le mot de passe dans la base de données, s'il existe je redirige vers l'index, si non, je recharge la page servant à s'identifier.
Pour ma part je te conseille d'include tes pages:
<?php
session_start();
require 'init.php';
$connect_db = connect();
if (isset ($_POST['log']) && isset ($_POST['mdp']))
{
$loginA=$_POST['log'];
$passA=$_POST['mdp'];
$req = "SELECT * FROM admin_tab WHERE login='$loginA' and mdp='$passA';";
$res = mysql_query($req,$connect_db);
if ($row=mysql_fetch_object($res))
{
$loginB=$row->login;
$passB=$row->password;
$_SESSION['sess_admin'] = "admin";
$statut="admin";
include('index_admin.php');
}
else
{
include('log_admin.php');
}
}
?>
Mais cette solution est seulement si le fichier init.php ne contient pas du html
Autre chose, j'ai optimisé un peu tpon code.
Reviens vers moi si tu veux une autre solution
<?php
session_start();
require 'init.php';
$connect_db = connect();
if (isset ($_POST['log']) && isset ($_POST['mdp']))
{
$loginA=$_POST['log'];
$passA=$_POST['mdp'];
$req = "SELECT * FROM admin_tab WHERE login='$loginA' and mdp='$passA';";
$res = mysql_query($req,$connect_db);
if ($row=mysql_fetch_object($res))
{
$loginB=$row->login;
$passB=$row->password;
$_SESSION['sess_admin'] = "admin";
$statut="admin";
include('index_admin.php');
}
else
{
include('log_admin.php');
}
}
?>
Mais cette solution est seulement si le fichier init.php ne contient pas du html
Autre chose, j'ai optimisé un peu tpon code.
Reviens vers moi si tu veux une autre solution
Merci briiiiix.
J'ai testé avec des include mais ça marche pas. C'est sensé servir de redirection aussi? Comme le header?
Voilà les erreurs obtenues:
J'arrête pour cette nuit, je reprends demain!
Je veux bien voir le code optimisé, puis j'aimerai que ces redirections fonctionnent...
Merci pour l'aide et à demain j'espère!
Bonne nuit!
J'ai testé avec des include mais ça marche pas. C'est sensé servir de redirection aussi? Comme le header?
Voilà les erreurs obtenues:
Warning: main(location:index_admin.php) [function.main]: failed to open stream: No such file or directory in /mnt/169/sdc/9/f/mysiteweb/test/admin/testlogadmin.php on line 33 Warning: main() [function.include]: Failed opening 'location:index_admin.php' for inclusion (include_path='/mnt/169/sdc/9/f/mysiteweb/include:.:/usr/php4/lib/php') in /mnt/169/sdc/9/f/mysiteweb/test/admin/testlogadmin.php on line 33
J'arrête pour cette nuit, je reprends demain!
Je veux bien voir le code optimisé, puis j'aimerai que ces redirections fonctionnent...
Merci pour l'aide et à demain j'espère!
Bonne nuit!
C clair que tes fichiers index_admin.php et login_admin.php ne sont pas dans le même dossier du fichier contenant le code, est ce que tu veux une redirection a l'aide de javascript ?
Bonjour!
Javascript pourquoi pas, je veux juste que ça fonctionne. Mes headers n'ont pas de problèmes avec EasyPHP!
Javascript pourquoi pas, je veux juste que ça fonctionne. Mes headers n'ont pas de problèmes avec EasyPHP!
D'apres le dernier message d'erreur du code que je t'ai envoyé.
Warning: main(location:index_admin.php) [function.main]: failed to open stream: No such file or directory in /mnt/169/sdc/9/f/mysiteweb/test/admin/testlogadmin.php on line 33
le fichier index_admin.php n'est pas trouvé dans le même dossier que celui du fichier contenant le script.
Commence par resoudre ça,, avant de pouvoir faire la redirection, puis revien vers moi
Warning: main(location:index_admin.php) [function.main]: failed to open stream: No such file or directory in /mnt/169/sdc/9/f/mysiteweb/test/admin/testlogadmin.php on line 33
le fichier index_admin.php n'est pas trouvé dans le même dossier que celui du fichier contenant le script.
Commence par resoudre ça,, avant de pouvoir faire la redirection, puis revien vers moi
Alors une solution un peu tirée par les cheveux mais qui fonctionne déjà:
//*****************************************
<?php
session_start();
require 'init.php';
$connect_db = connect();
if (isset ($_POST['log']) && isset ($_POST['mdp']))
{
$loginA=$_POST['log'];
$passA=$_POST['mdp'];
$req = "SELECT * FROM admin_tab WHERE login='$loginA' and mdp='$passA';";
$res = mysql_query($req,$connect_db);
if ($row=mysql_fetch_object($res))
{
$loginB=$row->login;
$passB=$row->password;
$_SESSION['sess_admin'] = "admin";
$statut="admin";?>
<script>
window.location = 'index_admin.php';
</script>
<?php }
else
{?>
<script>
window.location = 'login_admin.php';
</script>
<?php
}
}
?>
//*************************
Je repete, cette solution est maladroite mais qui tourne comme même
//*****************************************
<?php
session_start();
require 'init.php';
$connect_db = connect();
if (isset ($_POST['log']) && isset ($_POST['mdp']))
{
$loginA=$_POST['log'];
$passA=$_POST['mdp'];
$req = "SELECT * FROM admin_tab WHERE login='$loginA' and mdp='$passA';";
$res = mysql_query($req,$connect_db);
if ($row=mysql_fetch_object($res))
{
$loginB=$row->login;
$passB=$row->password;
$_SESSION['sess_admin'] = "admin";
$statut="admin";?>
<script>
window.location = 'index_admin.php';
</script>
<?php }
else
{?>
<script>
window.location = 'login_admin.php';
</script>
<?php
}
}
?>
//*************************
Je repete, cette solution est maladroite mais qui tourne comme même
Oké, ça marche. Un peu loufoque mais ça marche.
J'ai toujours pas compris pourquoi le header location ne fonctionnait pas, mais bon!
C'est compliqué décidément!
Merci beaucoup pour cette solution.
J'ai encore des erreurs mais celles là je pense pouvoir les résoudre.
J'ai toujours pas compris pourquoi le header location ne fonctionnait pas, mais bon!
C'est compliqué décidément!
Merci beaucoup pour cette solution.
J'ai encore des erreurs mais celles là je pense pouvoir les résoudre.