Bonjour tout le monde !
Je développe actuellement un site de gestion pour une entreprise en php.
J'ai une page avec un formulaire qui se recharge en fonction des erreurs grâce à la fonction localtion("header"), tout marchait très bien sur mon serveur de Dev puis lorsque l'on est passé en prod j'ai eu la célèbre erreur qui fait tirer les cheveux ... :
voici ma page header :Warning: Cannot modify header information - headers already sent by (output started at C:\Arbo-Web\voyance\private\conf\private.header.inc.php:11) in C:\Arbo-Web\voyance\class\voyant.class.php on line 152
Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <html> <head> <link href="../style_private.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="dessus"> <a href="../../deconnect.php"><img src="../../gfx/quitter.gif" border="0"/><br/> Quitter</a> </div> <div id="page"> <div id="header">
La classe voyant :
Et la page ou il y a le formulaire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 public function ajouterVoyant($nomV, $login, $pinCode, $tel,$level,$offset){ if(!$this->isNotExistLogin($login)) $erreur ='login'; if(!$this->isNotExistName($nomV)) $erreur .='+name'; if(!checkCode($pinCode,4)) $erreur .='+pin'; if(!checkCode($tel,10,1))$erreur .='+tel'; do { $ConfNum = mt_rand($offset,$offset+100); sprintf("%0.6d",$ConfNum); $sql1 = "SELECT Idx FROM monitors WHERE ConfNum = $ConfNum"; try { $sth = $this->dbh->query($sql1); $result = $sth->fetchAll(); } catch (PDOException $e){ if(DEBUG_MODE) echo 'Erreur : '.$e->getMessage().'<br/>'; } } while(count($result)!=0); if(@ $erreur == ""){ //Empeche l'affichage de la notice pour variable inexistante $nomV = $this->dbh->quote($nomV); $login = $this->dbh->quote($login); $confGroup = $this->dbh->quote($_SESSION['confGroup']); $tel = $this->dbh->quote($tel); $sql = "INSERT into monitors (Name, Login, PinCode, Phone,ConfNum,ConfGroup, Level, StatLevel, Active) VALUES ($nomV,$login,$pinCode,$tel,$ConfNum,$confGroup,$level, 1, 1)"; try { $retour = $this->dbh->exec($sql); if(DEBUG_MODE) retourReq($retour); return true; } catch (PDOException $e){ if(DEBUG_MODE) echo 'Erreur : '.$e->getMessage().'<br/>'; return false; } } else { header("location:add_voyant.php?erreur=".$erreur."&nom=".$nomV."&login=".$login."&pin=".$pinCode."&tel=".$tel.""); return false; } }
En espérant quer vous pourrez m'aider je vous remercie d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87 <?php session_start(); $page = 'add_voyant'; if(isset($_SESSION['idx']) && isset($_SESSION['name'])){ include ('../conf/private.header.inc.php'); include ('../../fonctions.php'); include ('../../conf/conf.inc.php'); if(checkPageRight($page,$dbh)){ ?> <div id="conteneurmenu"> <ul id=menu> <li><a href="modif_voyant.php"><img src="../../gfx/modif_voyant.gif" border="0" /></a></li> <li><a href="suppr_voyant.php"><img src="../../gfx/suppr_voyant.gif" border="0" /></a></li> <li><a href="add_voyant.php"><img src="../../gfx/add_voyant.gif" border="0" /></a></li> </ul> </div> </div> <div id="central"> <h2>Ajouter un(e) voyant(e) : </h2> <?php if (!isset($_POST['ajouter'])){ ?> <form action="#" method="POST"> <table> <tr> <td>* Nom : </td> <td><input name="nom" type="text" value="<?php if(isset($_GET['nom'])) echo $_GET['nom']; ?>"/> <?php if(isset($_GET['erreur']) && (stripos($_GET['erreur'],"name")!== false)) echo '<span class="erreur">Ce nom existe déjà</span>';?> </td> </tr> <tr> <td>* Login : </td> <td> <input name="login" type="text" value="<?php if(isset($_GET['login'])) echo $_GET['login']; ?>" maxlength="12"/> <?php if(isset($_GET['erreur']) && (stripos($_GET['erreur'],"login")!== false)) echo '<span class="erreur">Ce login existe déjà</span>'; else echo '(Choisir un login entre 4 et 12 caractères)'?> </td> </tr> <tr> <td>* Code Pin : </td> <td> <input name="pin" type="text" value="<?php if(isset($_GET['pin'])) echo $_GET['pin']; ?>" maxlength="4"/> <?php if(isset($_GET['erreur']) && (stripos($_GET['erreur'],"pin")!== false)) echo '<span class="erreur">Ce code ne fait pas 4 chiffres</span>'; else echo '(Choisir un code pin de 4 chiffres)'?> </td> </tr> <tr> <td>* Téléphone : </td> <td><input name="tel" type="text" value="<?php if(isset($_GET['tel'])) echo $_GET['tel']; ?>" maxlength="10"/> <?php if(isset($_GET['erreur']) && (stripos($_GET['erreur'],"tel")!== false)) echo '<span class="erreur">Ce téléphone ne fait pas 10 chiffres</span>';?> </td> </tr> <td>Niveau de droits : </td> <td><?php echo '<select name="level">'; for($i=1;$i<=MAX_LEVEL;$i++) echo '<option value="'.$i.'">'.$i.'</option>';?> </select> </td> <tr> </tr> <td colspan="2"><input class="ok" name="ajouter" type="submit" value=""/></td> </tr> </table> </span> </form> <?php } else { if(!empty($_POST['nom']) && !empty($_POST['login']) && !empty($_POST['pin']) && !empty($_POST['tel'])){ $voyant = new Voyant($dbh); $offset = $tab[$_SESSION['confGroup']]; if($voyant->ajouterVoyant($_POST['nom'], $_POST['login'],$_POST['pin'],$_POST['tel'],$_POST['level'],$offset)) echo 'Voyant ajouté à la base de donnée<br/>'; else echo 'Erreur dans lajout'; } else { echo 'Merci de remplir correctement les champs avec des astérisques.<br/>'; } } include ('../conf/private.footer.inc.php'); } else header("../index.php"); } else header("location:../index.php"); ?>
AsQuel
Partager