Bonjour,

Voila je rencontre un petit problème avec mon code.

<?php

     <?php

$errors = array(); / tableau qui contient mes erreurs /

/ si le champ nom n'existe pas ou n'est pas rempli alors message d'erreur /
if (!array_key_exists('name', $_POST) || $_POST['name'] ==''){
$errors['name'] = "Vous n'avez pas renseigné votre nom";
}
/ si le champ email n'existe pas ou n'est pas rempli alors message d'erreur /
if (!array_key_exists('email', $_POST) || $_POST['email'] ==''){
$errors['email'] = "Vous n'avez pas renseigné votre email";
}
/ si le champ société n'existe pas ou n'est pas rempli alors message d'erreur /
if (!array_key_exists('societe', $_POST) || $_POST['societe'] ==''){
$errors['societe'] = "Vous n'avez pas renseigné votre société";
}
/ si le champ ville n'existe pas ou n'est pas rempli alors message d'erreur /
if (!array_key_exists('ville', $_POST) || $_POST['ville'] ==''){
$errors['ville'] = "Vous n'avez pas renseigné votre ville";
}
/ si le champ message n'existe pas ou n'est pas rempli alors message d'erreur /
if (!array_key_exists('message', $_POST) || $_POST['message'] ==''){
$errors['message'] = "Vous n'avez pas renseigné votre message";
}

/ si mon tableau n'est pas vide et qu'il renvoie des erreur, alors on retourne sur la page précédante/
if(!empty($errors)){
/ je sauvegarde mes erreurs dans une session pour informer l'utilisateur/
session_start();
$_SESSION['errors'] = $errors;
/ et je retourne à la page précédante /
header('Location: index.php');
}
/Sinon on traite les données envoyés /
else{
$message = $_POST['message'];
$headers = 'FROM: testwamp59700@gmail.com';
mail('testwamp59700@gmail.com', 'Formulaire de contact', $message, $headers);
}

Décrivez ici votre code ou ce que vous cherchez à faire
Voilà mon soucie c'est que je rencontre un soucie de boucle infinie je pense car j'ai ce message d'erreur

 <?php
    session_start();
?><!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Website pika pika</title>
        <!--font -->
        <link href="https://fonts.googleapis.com/css?family=Roboto" rel="stylesheet">
        <!-- mon css-->
        <link rel="stylesheet" href="css/bootstrap.min.css">
        <link rel="stylesheet" href="css/style.css">
    </head>

    <!-- site content -->

    <body>
        <?php
           include('post_contact.php');
        ?>
        <!-- header -->
        <header class="container-fluid header">
            <div class="container">
                <a href="#" class="logo">
                    pikapika pika Website
                </a>
                <nav class="menu">
                    <a href="#"> Accueil</a>
                    <a href="#about"> A propos</a>
                    <a href="#portfolio"> Portfolio</a>
                    <a href="#contact"> Contact</a>
                </nav>
            </div>
        </header>
        <!-- end header-->

        <!-- banner-->
        <section class="container-fluid banner">
            <div class="ban">
                <img src="img/banner.jpg" alt="bannière du site" />
            </div>
            <div class="inner-banner">
                <h1>Bienvenue sur mon portfolio</h1>
                <button class="btn btn-custom">Contactez moi !</button>
            </div>
        </section>
        <!-- end banner-->

        <!-- about -->
        <section class="container-fluid about">
            <div class="container">
                <div class="row">
                    <h2 id="about">A propos de moi</h2>
                    <hr class="separator">
                    <article class="col-md-4 col-lg-4 col-xs-12 col-sm-12">
                        <h2>Etudes</h2>
                        <p>osodqsonqokqdjDQOSDQSODJQSOFQSOFQ
                        DQSODQOSDQSODQOSDQOSDQSDOQSODQSODNUD OQSDNQOSNDQOSDNDGHDSFHSDHDSHSDHSDHUD
                        GHSDHSDHGHDHDHDHSDHDHDSHDHDHDHDSHSDD
                        HDHSDFHDHDHDHDQOSDNQSONDKQMLFKQMFKDD
                        </p>
                    </article>
                    <article class="col-md-4 col-lg-4 col-xs-12 col-sm-12">
                        <h2>Experiences</h2>
                        <p>osodqsonqokqdjDQOSDQSODJQSOFQ
                        DQSODQOSDQSODQOSDQOSDQSDOQSODQSO OQSDNQOSNDQOSDNDGHDSFHSDHDSHSDHS
                        GHSDHSDHGHDHDHDHSDHDHDSHDHDHDHDS
                        HDHSDFHDHDHDHDQOSDNQSONDKQMLFKQM 
                        </p>
                    </article>
                     <article class="col-md-4 col-lg-4 col-xs-12 col-sm-12">
                        <h2>Hobbies</h2>
                        <p>osodqsonqokqdjDQOSDQSODJQSOFQ
                        DQSODQOSDQSODQOSDQOSDQSDOQSODQSO OQSDNQOSNDQOSDNDGHDSFHSDHDSHSDHS
                        GHSDHSDHGHDHDHDHSDHDHDSHDHDHDHDS
                        HDHSDFHDHDHDHDQOSDNQSONDKQMLFKQM 
                        </p>
                    </article>
                </div>
            </div>  
        </section>
        <!-- end about -->

        <!-- portfolio -->
        <section class="container-fluid portfolio">
            <div class="container">
                <h2 id="portfolio">Mon portfolio</h2>
                <hr class="separator">
                <article class="col-md-3 col-lg-3 col-xs-12 col-sm-12 item-folio">

                </article>
                <article class="col-md-3 col-lg-3 col-xs-12 col-sm-12 item-folio">

                </article>
                <article class="col-md-3 col-lg-3 col-xs-12 col-sm-12 item-folio">

                </article>
                <article class="col-md-3 col-lg-3 col-xs-12 col-sm-12 item-folio">

                </article>
                <article class="col-md-3 col-lg-3 col-xs-12 col-sm-12 item-folio">

                </article>
                <article class="col-md-3 col-lg-3 col-xs-12 col-sm-12 item-folio">

                </article>
                <article class="col-md-3 col-lg-3 col-xs-12 col-sm-12 item-folio">

                </article>
                <article class="col-md-3 col-lg-3 col-xs-12 col-sm-12 item-folio">

                </article>
            </div>
        </section>
        <!-- end portfolio-->

        <!-- footer / contact -->
        <footer class="container-fluid footer">
            <div class="container">
                <h2 id="contact">Contactez moi</h2>
                <hr class="separator">
              <div class="starter-template">

                  <?php
                    if(array_key_exists('errors', $_SESSION)): ?>
                    <div class="alert alert-danger">
                        <?php echo implode("<br>", $_SESSION['errors']); ?>
                    </div>
                <!--enleve le message d'erreur une fois la page raffraichie  -->
                    <?php unset($_SESSION['errors']); endif; ?>

                <form action="post_contact.php" method="POST">
                    <div class="row">
                        <div class="col-xs-6">
                            <div class="form-group">
                                <label for="inputname">Votre nom</label>
                                <input type="text" name="name" class="form-control" id="inputname">
                            </div>
                        </div>
                        <div class="col-xs-6">
                            <div class="form-group">
                                <label for="inputemail">Votre email</label>
                                <input type="text" name="email" class="form-control" id="inputemail">
                            </div>
                        </div>
                        <div class="col-xs-6">
                            <div class="form-group">
                                <label for="inputsociete">Votre société</label>
                                <input type="text" name="societe" class="form-control" id="inputsociete">
                            </div>
                        </div>
                        <div class="col-xs-6">
                            <div class="form-group">
                                <label for="inputville">Votre ville</label>
                                <input type="text" name="ville" class="form-control" id="inputville">
                            </div>
                        </div>
                          <div class="col-xs-12">
                            <div class="form-group">
                                <label for="inputmessage">Votre message</label>
                                <textarea id="inputmessage" name="message" class="form-control"></textarea>
                            </div>
                             <button type="submit" class="btn btn-primary">Envoyer</button> 
                        </div>
                    </div>
                  </form>
                </div>  
            </div>
        </footer> 
        <!-- end footer / contact --> 

    </body>
</html>

Ce que je veux c'est trouver une solution à ce probleme, je suis le tuto pas à pas mais vraissemblablement j'ai fait une betise!

Décrivez ici ce Jque vous cherchez à obtenir

Ce que j'obtiens

DécriveCette page ne fonctionne pas

localhost vous a redirigé à de trop nombreuses reprises.
Essayez de supprimer les cookies..
ERR_TOO_MANY_REDIRECTSz ici vos erreurs ou ce que vous obtenez à la place de ce que vous attendez :(

8 réponses


Vincent Dumortier
Auteur
Réponse acceptée

c'etait aussi simple que sa! je n'y crois pas effectivement vous avez totalement raison en suprimant mon include dans la page index cela fonctionne correctement merci beaucoup à tous de m'avoir aidé, par contre ce qui me chiffonne encore malgrés le fait que cela marche c'est que dans le tuto de grafikart il ne retire pas le include celui ci est toujours present alors ai-je mal suivit ou recopié il faudra que je verifie mais merci a tous encore!

Salut,

si tu as une boucle infinie, c'est qu'il y a un (ou plusieurs) header('Location: ...') quelque part qui forme(nt) une boucle.
Mais dans ton code on en voit pas.
Le code que tu montres ne nous avance à rien pour résoudre le problème.

J'espère que quelqu'un pourra t'aider (une fois qu'on verra le code adéquat) parce-que moi je vais dormir là, et je ne pourrai pas me connecter pendant 3 jours.
Bon courage.

Salut ! Comme le demande SLK, tu peux afficher ton code, que l'on puisse voir aussi ton Header ?

Merci pour vos reponses et desolé d'avoir mis un peu de temps à editer mon code, je l'ai mis dans sa gobalité, ma page index avec mon code html et php et ma page contact qui contient mon code php propre au formulaire, merci, pour rappel j'ai un probleme de boucle infinie et etant novice encore en php je ne parviens pas à trouvé l'erreur.

Pourquoi inclure post_contact si au moment de valider ton formulaire, tu vas sur ce même fichier ?

Peu-être une annerie, mais
Est-tu sur de ton include ? c'est pas

require 'post_contact.php';

?

Oui j'ai testé avec require et maheresement le soucie n'a pas l'air de venir de là :/

Bonjour Vincent,

Comme te l'a dit Carouge10, ton problème vient du fait que tu rediriges vers index.php alors que 'post_contact.php' est déjà inclu dans ta page.
Il faut que tu vois le require comme un morceau de code qui vient s'ajouter au code dans lequel il est appelé.
post_contact.php est executé à chaque fois que tu te rends sur index.php, tu n'as pas donc pas besoin de rediriger puisque tu es sur cette page.
Il faut choisir entre l'un ou l'autre.