pb avec la commande de redirection header!!

Eléphant du PHP | 51 Messages

26 févr. 2007, 11:54

salut a ts; j'ai un pb que je vais essayer de vous l'expliquer:
j'ai trois page php qui sont hierarchisées comme suit:
INDEX.PHP => NEW_TS.PHP => AJOUT_TS.PHP
je m'explique plus:
-je lit l'identifiant ds INDEX.PHP, s'il n'existe pas ds la base, j'ouvre un formulaire NEW_TS.PHP (avec include) pour la saisie des données
-après l'utilistateur tappe valider(submit) pour me brancher a la page AJOUT_TS.PHP
- ds la page AJOUT_TS.PHP je mets : header("Location: index.php? num_cin=$num_cin");
num_cin c'est l'identifiant
resultat: l'ajout ds la base est ok, mais lors de retour je reçois le message suivant: (Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-8\www\ts\ajout_ts.php:2) in c:\program files\easyphp1-8\www\ts\ajout_ts.php on line 52)
et merci d'avance

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

26 févr. 2007, 11:57

Jette un petit coup d'oeil dans la FAQ pour comprendre le message d'erreur. Ca devrait t'aider à savoir ce qui ne va pas et peut être trouver comment le corriger ;)
http://www.phpfrance.com/forums/voir_sujet-47.php
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 51 Messages

26 févr. 2007, 12:43

merci pour m'avoir répondu, mais je n'arrive pas à localiser mon erreur et voici le code source de ma page :
******************************************
<?php
echo "ici ajout ts" ;
$num_cin=$_POST['num_cin'];
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$etab_orig=$_POST['etab_orig'];
$fil_orig=$_POST['fil_orig'];
$an_bac=$_POST['an_bac'];
$type_bac=$_POST['type_bac'];
$adresse=$_POST['adresse'];
$codepost=$_POST['codepost'];
$ville=$_POST['ville'];
$tel=$_POST['tel'];
$email=$_POST['email'];
$moyenne1=$_POST['moyenne1'];
$moyenne2=$_POST['moyenne2'];
$moyenne3=$_POST['moyenne3'];
$moyenne4=$_POST['moyenne4'];


if($num_cin == "") { echo "vous devez saisir votre num_cin";}
else
{

$link = mysql_connect("localhost", "root", "") or die("Impossible de se connecter");
//echo "Connexion réussie";
// nom base
mysql_select_db("ts") or die("Could not select database");

$query = "SELECT * FROM etudiant where num_cin='$num_cin'";
$result = mysql_query($query) or die("1 query ajout failed");
if ($line = mysql_fetch_array($result))
{ echo "num_cin existante !!";}
else {

$insertion = "INSERT INTO
etudiant (num_cin,prenom,nom)
VALUES('$num_cin','$prenom','$nom')";

$result2 = mysql_query($insertion) or die("2 Query failed");
?>
<?
header("Location: index.html? num_cin=$num_cin");
// Libération des résultats
mysql_free_result($result);
// Fermeture de la connexion
mysql_close($link);
}
}
?>

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

26 févr. 2007, 13:49

output started at c:\program files\easyphp1-8\www\ts\ajout_ts.php:2
Qu'y a-t-il à cet endroit ? Comprends tu l'anglais ?
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.