[PHP] Problème Header
Fermé
onurb07
Messages postés
13
Date d'inscription
mercredi 19 juillet 2006
Statut
Membre
Dernière intervention
2 août 2006
-
24 juil. 2006 à 10:42
mec perdu - 19 déc. 2008 à 11:40
mec perdu - 19 déc. 2008 à 11:40
A voir également:
- [PHP] Problème Header
- Easy php - Télécharger - Divers Web & Internet
- Bad pool header ✓ - Forum Windows 7
- Get_magic_quotes_gpc php 8 ✓ - Forum PHP
- Bouton php - Forum PHP
- Php?id=1 - Forum PHP
5 réponses
Darshu
Messages postés
303
Date d'inscription
lundi 30 janvier 2006
Statut
Membre
Dernière intervention
3 avril 2008
64
24 juil. 2006 à 11:15
24 juil. 2006 à 11:15
Salut. C'est l'erreur classique des header() : il faut le mettre AVANT tout code HTML, c'est la toute première chose à faire.
Donc ton code c'est plutôt
<? header("location:http://proplan.free.fr/merci.php"); ?>
<HTML>
<HEAD>
....
Donc ton code c'est plutôt
<? header("location:http://proplan.free.fr/merci.php"); ?>
<HTML>
<HEAD>
....
Moi je comprend pas c'est la meme erreur pourtant mon header est placé avant voici un bout du code source :
<?
function redirect($url)
{
header("location:$url");
}
?>
<html>
<?
$saut="<br/><br/>";
/*formulaire d identification pour administrateur et client*/
echo("<form name=\"formulaire\" action=\"identification.php\" method=\"get\">");
echo("Login :$saut");
echo("<input type=\"text\" name=\"login\"/>$saut");
echo("Mots De Passe :$saut");
echo("<input type=\"password\" name=\"mdp\"/>$saut");
echo("<input type=\"submit\" value=\"validation\"/>");
?>
<?
..... interrogation de la base de donné et recupération des infos
..... verification des infos et enfin la function
if($affiche[0]=="a" || $affiche[0]=="A")
{
$lien="./administration.php";
redirect($lien);
}
else
{
$lien="produits.php";
}
}
else
{
$lien="erreur.php";
}
}
else
{
$lien="erreur.php";
}
}
/*verification de du pseudo*/
}
echo("</form>");
mysql_close($connectServer);
?>
</body>
</html>
<?
function redirect($url)
{
header("location:$url");
}
?>
<html>
<?
$saut="<br/><br/>";
/*formulaire d identification pour administrateur et client*/
echo("<form name=\"formulaire\" action=\"identification.php\" method=\"get\">");
echo("Login :$saut");
echo("<input type=\"text\" name=\"login\"/>$saut");
echo("Mots De Passe :$saut");
echo("<input type=\"password\" name=\"mdp\"/>$saut");
echo("<input type=\"submit\" value=\"validation\"/>");
?>
<?
..... interrogation de la base de donné et recupération des infos
..... verification des infos et enfin la function
if($affiche[0]=="a" || $affiche[0]=="A")
{
$lien="./administration.php";
redirect($lien);
}
else
{
$lien="produits.php";
}
}
else
{
$lien="erreur.php";
}
}
else
{
$lien="erreur.php";
}
}
/*verification de du pseudo*/
}
echo("</form>");
mysql_close($connectServer);
?>
</body>
</html>
Tu peux peut $etre t'en sortie en "passant" toput le code php avant les balises <html> comme ceci:
SVP utilises les tags php normalisés <?php ?>
sinon tu peux aussi lancer une page php par du Javascript en mettant où tu veux dans ta page, donc dans des test if / else
<script language="javascript">document.location.href="ton_script.php"; </script>
SVP utilises les tags php normalisés <?php ?>
<?php function redirect($url) { header("location:$url"); } //..... interrogation de la base de donné et recupération des infos //..... verification des infos et enfin la function if($affiche[0]=="a" || $affiche[0]=="A"){ $lien="./administration.php"; redirect($lien); }else{ $lien="produits.php"; } else { $lien="erreur.php"; } } else { $lien="erreur.php"; } } /*verification de du pseudo*/ } ?> <html> <body> <?php $saut="<br/><br/>"; /*formulaire d identification pour administrateur et client*/ echo("<form name=\"formulaire\" action=\"identification.php\" method=\"get\">"); echo("Login :$saut"); echo("<input type=\"text\" name=\"login\"/>$saut"); echo("Mots De Passe :$saut"); echo("<input type=\"password\" name=\"mdp\"/>$saut"); echo("<input type=\"submit\" value=\"validation\"/>"); echo("</form>"); mysql_close($connectServer); ?> </body> </html>
sinon tu peux aussi lancer une page php par du Javascript en mettant où tu veux dans ta page, donc dans des test if / else
<script language="javascript">document.location.href="ton_script.php"; </script>
si tu veux régler le problème des balises HTML APRES le header, tu peux toujours utiliser ob_start(); et ob_end_flush; ça bufferise ton code, autrement dit c'est comme si tu plaçai dans une variable au lieu de faire des echo, avant de l'afficher en dernier, et donc après les header et les session_sart() (cf manuel)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
merci
mais, j'ai un autre problème, a partir de la condition if ($nbLigne==0)
voici mon code :
<?php include("session.php");?>
<?php
include('connex.php');
$identifiant = $_POST["identifiant"];
$passwd =$_POST["password"];
$sql = "SELECT login FROM adherant WHERE login = '$identifiant' AND password = '$passwd'";
$result = mysql_query($sql);
while ($ligne = mysql_fetch_array($result))
{
$identifiant = $ligne['login'];
$passwd = $ligne['password'];
}
$nbLigne=mysql_num_rows($result);
if ($nbLigne==0)
{
}
else
{
$_SESSION['identifiant']= $identifiant;
$_SESSION['password']= $passwd;
header("Location: index.php?identifiant=$identifiant");
}
?>
mais, j'ai un autre problème, a partir de la condition if ($nbLigne==0)
voici mon code :
<?php include("session.php");?>
<?php
include('connex.php');
$identifiant = $_POST["identifiant"];
$passwd =$_POST["password"];
$sql = "SELECT login FROM adherant WHERE login = '$identifiant' AND password = '$passwd'";
$result = mysql_query($sql);
while ($ligne = mysql_fetch_array($result))
{
$identifiant = $ligne['login'];
$passwd = $ligne['password'];
}
$nbLigne=mysql_num_rows($result);
if ($nbLigne==0)
{
}
else
{
$_SESSION['identifiant']= $identifiant;
$_SESSION['password']= $passwd;
header("Location: index.php?identifiant=$identifiant");
}
?>