Problème header php

Résolu
cabon.contact -  
 cabon.contact -
Bonjour,

Je rencontre un petit problème en PHP, j'aimerais rediriger l'utilisateur vers une page précise.

Voici le code source :

<?php
require('comunia/data.php');
mysql_connect('localhost','root','');
mysql_select_db('identity');
?>
  <?php
if(!empty($_POST) && !empty($_POST['id']) && !empty($_POST['comment']))
{

  $id = stripcslashes($_POST['id']);
  $comment = stripcslashes($_POST['comment']);

  $req = $bdd->prepare('INSERT INTO place (id,comment) VALUES (:id,:comment)');
$req->execute(array(':id'=>$id, ':comment'=>$comment));
  $req->closeCursor();
    $id = strip_tags($_GET['id']);
  $req = $bdd->prepare('SELECT * FROM page WHERE id=:id');
  $req->execute(array(':id'=>$id));
  while($data = $req->fetch(PDO::FETCH_OBJ)):

header("location:page.php?id=echo $id;");
endwhile;
}
else{
	header('Location :index.php');
}
?>


Je sais bien qu'il y a des erreurs un peu partout mais je ne suis que bidouilleur, pas développeur malheureusement. Si vous pouvez m'aidez ça serait ultra sympa.

5 réponses

  1. astuces72 Messages postés 2146 Date d'inscription   Statut Membre Dernière intervention   1 669
     
    hello

    essaye plutot ça à la place de: header("location:.....");

    echo '<meta http-equiv="refresh" content="0;URL=page.php">';

    0 correspond au nombre de seconde avant l'envoi de la page.
    0
  2. Atropa Messages postés 2051 Statut Membre 274
     
    bonsoir pour le header met plutot

    header('Location: /');

    sinon c'est ta connexion a la db qui n'est pas cohérente tu te connectes avec les fonctions mysql et tu fais tes requêtes avec pdo

    il vaut mieux faire ses requêtes en pdo mais il faut te connecter avec

    $bdd = new PDO('mysql:dbname=testdb;host=localhost','root','');
    0
    1. cabon.contact
       
      Oui c'est déjà fait mais merci comme même :)
      data.php (database)
      <?php
      try{
      $bdd = new PDO('mysql:host=localhost;dbname=identity', 'root', '') or die(print_r($bdd->errorInfo()));
      $bdd->exec('SET NAMES utf8');
      }
      
      catch(Exeption $e){
      die('Erreur:'.$e->getMessage());
      }
      ?>
      0
  3. cabon.contact
     
    Ah oui j'ai oublié de préciser l'erreur que cela me fait,

    Undefined index: id in C:\wamp\www\comment.php on line 16
    et puis cela me redirige pas vers ma page (page.php?id=identifiant) ça marque exactement ce que j'ai mis à la place, CAD que ça me met ça,
    location:page.php?id=echo $id;
    0
    1. Atropa Messages postés 2051 Statut Membre 274
       
      header('Location: /page.php?id= '.$id);

      remplace par ça mais le message d'erreur dit que la variable $id n'est pas définit
      0
  4. cabon.contact
     
    Oui voilà pourtant il est bien définit, vue que j'ai deux variables ID je me suis dit que ça pouvait poser un problème. Ça peut venir de là ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. cabon.contact
     
    Est-ce que cela ne vient t'il pas plutôt de ma reqête, parce que ce script la est plutôt correct quand pensez vous ?
    header("location:page.php?id="echo $data->id;");
    0
    1. Atropa Messages postés 2051 Statut Membre 274
       
      il faut écrire :
      header('Location: /page.php?id= '.$data->id);

      dans ce cas

      au lieu du echo (inutile d'afficher le texte et il n'a rien a faire là) il faut le concaténer

      par contre un header location doit être suivit d'un exit() pour que l'exécution s'arrête

      si il n'est pas suivit d' exit() l'exécution se poursuit jusqu'à la fin (souvent inutilement)
      0
    2. cabon.contact
       
      Yeahhhh ça fonctionne !!!! Merci :)
      0