Problème de redirection

Eléphant du PHP | 52 Messages

21 avr. 2007, 10:51

Bonjour tout le monde,:D

j'ai un problème dans mon script que je pouvais pas le résoudre.
En faite mon script est le suivant :
<?php
    session_start();
    require ("../../classes/class.Validator.php");
    $vld = new Validator($_POST);    
    
    if($_POST['send']) 
   {
        //test de validation de mon formulaire
   }
   if(!$vld->errors()){
       //insertion dans la base ;
       header("Location : page.php") ; //page.php est dans le même dossier    que celui de ce script
       exit();
    }
?>
//et puis mon code HTML comme suit
<form method ="POST" action ="<?php echo $_SERVER['PHP_SELF'] ; ?>">
<table>
<tr>
<?php 
if($vld->errors())
      echo $vld->getMsg() ;
?>
</tr>
//les champs de mon formulaire
<input type="submit" name ="send">
</table>
</form>
 
Autre chose, la validation marche à merveille, c'est au niveau de la redirection que ça bloque.

Merci de m'aider.

Eléphant du PHP | 206 Messages

21 avr. 2007, 11:34

la redirection avec header ne doit etre précédé d'aucun caractère html etc etc..

(vérifie qu'il y en a pas dans tes includes) ou meme qu'il y ait un simple espace...

Eléphant du PHP | 52 Messages

21 avr. 2007, 11:46

Ah je pense pas sinon il m'affiche le fameux message :

Cannot modify header information - headers already sent by...

Et encore j'ai vérifé dans mon validator.php il contient que des tests et des return false ou true rien de plus.

Merci . :)

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

21 avr. 2007, 11:58

Est ce que tu rentres bien dans le if ?
as-tu vérifié la valeur retournée par $vld->errors() ?

Essaye également de virer l'espace entre le "Location" et les deux points :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 52 Messages

21 avr. 2007, 12:07

C pas vrai!!!! :shock: :shock: :shock: :shock: :shock:
Eh ben, oui, c'était les espaces entre Location et le non de la page.
Incroyable ce php.:?: :!: :!: :!: :!:



Merci pour vous tous. :D