IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

HTML Discussion :

Page de traitement d'un formulaire


Sujet :

HTML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Avatar de maxusn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2012
    Messages : 175
    Par défaut Page de traitement d'un formulaire
    Bonjour,

    je suis en train de développer une application mobile avec phonegap.
    l'utilisateur renseigne les champs d'un formulaire, ces valeurs sont ensuite stockées dans une base de données.

    mon 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
    			<div data-role="content">		
                    <form action="http://serv/phonegap/traitForm.php" method="post">
                        <fieldset data-role="fieldcontain">
    						<p>
                                <label for="titre" >Titre :</label>
                                <input type="text" name="titre" id="titre" required/>
                            </p>
    						<p>
    							<label for="avec" >Avec :</label>
    							<input type="text" name="avec" id="avec" /> 
                            </p>
                            <p>
    							<label for="email">Email :</label>
    							<input type="email" name="email" id="email"/>
                            </p>
    						<p>
    							<label for="tel">Telephone :</label>
    							<input type="tel" name="tel" id="tel" placeholder="06xxxxxxxx"/>
                            </p>
    						<p>
    							<label for="date">Date:</label>
    							<input type="datetime" name="date" id="date" value=""/>
                            </p>
    						<p>
    							<label for="adresse">Lieu :</label>
    							<input type="text" name="adresse" id="adresse">
    					    </p>
    						<p>
    							<label for="com">Commentaire:</label>
    							<textarea name="com" id="com"></textarea>
    					    </p>
                            <p>
    							<input type="submit" id="valide" value="Valider" data-theme="b" data-inline="true" />
    							<input type="reset" value="Reinitialiser" data-theme="b" data-inline="true"/>
                            </p>
                        </fieldset>
                    </form>				
    			</div>
    mon traitement PHP:
    Code php : 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
    <?php
     
    try
    {
    	$bdd = new PDO('mysql:host=localhost;dbname=rendezvous', 'root', '');							
    }
    catch (Exception $e)
    {
    	die('Erreur : ' . $e->getMessage());
    }
     
     
    // on stock dans la BD les informations données dans le formulaire si date et mail valide
    $req = $bdd->prepare('INSERT INTO reunion(titre,avec,email,telephone,date,lieu,commentaire) VALUES (:titre,:avec,:email, :telephone, :date,:lieu,:commentaire)');
    $req->execute(array(
    	'titre' => $_POST['titre'],
    	'avec' => $_POST['avec'],
    	'email' => $_POST['email'],
    	'telephone' => $_POST['tel'],
    	'date' => $_POST['date'],
    	'lieu' => $_POST['adresse'],
    	'commentaire' => $_POST['com']
    ));	
     
     
    ?>

    Le problème c'est que lorsque l'utilisateur valide le formulaire, il est rediriger vers la page PHP de traitement hébergé sur le serveur, et est donc obliger de quitter l'application pour revenir sur les pages de l'application (le formulaire et la liste des infos stockées en BD).

    Y a t'il un moyen pour que le traitement PHP s’exécute "en tache de fond" (sans que l'utilisateur sois redirigé vers cette page).

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    En quoi est-ce gênant ? C'est le fonctionnement normal d'un formulaire, aucun utilisateur ne s'en offusquera...

    Au pire, tu peux regarder du côté d'AJAX...
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 55
    Par défaut
    Moi en général je fais le traitement du formulaire dans la même page.
    Y'a un côté pratique :
    Si le formulaire a mal été renseigné j'ai toutes les données pour les remettre dans les inputs.
    Si ça c'est bien passé je fait une redirection avec header, ce qui évite de renvoyer les données si l'utilisateur recharge la page.
    Et c'est transparent pour l'utilisateur, il ne voit pas de page de traitement différente.

  4. #4
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Par défaut
    Tu peux tout aussi bien faire tes tests en JavaScript avant l'envoi du formulaire ce qui aurait pour but de bloquer l'envoi des données (et donc leur effacement) en indiquant un ou plusieurs messages d'information sur les erreurs de saisie.
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

  5. #5
    Membre chevronné
    Avatar de maxusn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2012
    Messages : 175
    Par défaut
    ok merci je vais regarder ca.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. page d'attente ou désactivation formulaire?
    Par SegmentationFault dans le forum Langage
    Réponses: 13
    Dernier message: 11/12/2006, 12h27
  2. Script qui ouvre une page web et remplit le formulaire
    Par koKoTis dans le forum VBScript
    Réponses: 12
    Dernier message: 15/08/2006, 02h34
  3. [CGI] Rester sur la page d'envoi d'un formulaire
    Par flykev dans le forum Langage
    Réponses: 2
    Dernier message: 28/07/2006, 14h21
  4. traitement d'un formulaire(debutant)
    Par Shyboy dans le forum Web
    Réponses: 1
    Dernier message: 15/06/2006, 13h30
  5. [VB6]créer des pages à l'interieur d'un formulaire
    Par bb62 dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 17/02/2006, 21h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo