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

Langage PHP Discussion :

[PHP-JS] Formulaire PHP avec redirection en JavaScript


Sujet :

Langage PHP

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 263
    Par défaut [PHP-JS] Formulaire PHP avec redirection en JavaScript
    Bonjour a tous, je suis entrain de faire un formulaire d'inscription et j'aurai voulu que l'utilisateur soit renvoyé a une page differente selon si l'inscription est bonne ou non.

    Je ne peux pas mettre de header("Location: ...") parc'que j'affiche un message different selon le resultat de l'opération et j'aimerai qu'il soit apres l'affichage du message redirigée au bout de 3 secondes vers une autre page... (j'pense pas qu'on puisse mettre ce genre de configuration dans un header )

    Habituelment j'utlise un script JavaScript pour faire une redirection de page, mais a s'que j'ai constatée on ne peut pas mettre directement du JavaScript dans du PHP...


    J'vous montre mon code php et comment j'ai théoriquement vu la chose, mais ca ne fonctionne pas, si vous avez une sugestion pour rendre cela possible, je suis preneur!!!


    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
     
    <?php
     
    session_start();
     
     
    $serveur ="localhost";
    $login = "root";
    $mot_passe = "";
    $base = "artkateo";
     
     
    $connexion = mysql_pconnect($serveur, $login, $mot_passe) or die ("impossible de se connecter a MySQL : ".mysql_error());
     
    $mabase = mysql_select_db($base) or die ("impossible de ce connecter ma table : ".mysql_error());
     
    switch($_POST['action'])
     
    	{
    		case "ajout_membre" :
     
    		if(isset($_POST['pseudo']) or ($_POST['motdepasse']))
     
    			{  
     
     
    		$requete = "INSERT INTO utilisateur (login, pass) VALUES
    		('".$_POST['login']."','".$_POST['motdepasse']."')";
     
    		$resultat = mysql_query($requete) or die(mysql_error());
     
    		if($resultat == TRUE)
     
    		{
     
    		echo "L'inscription a bien été transmise";
     
    					<SCRIPT LANGUAGE="JavaScript">
     
    			function redirect() {
    				window.location="corine.php"
    			}
    			setTimeout("redirect()",3000);
    			</SCRIPT>
     
     
    		}
    			}
     
    		else
     
    		{
     
    		echo "Vous n'avez pas rentré tout les champs obligatoire.";
     
     
     
    					<SCRIPT LANGUAGE="JavaScript">
     
                function redirect() {
                    window.location="n_membre.php"
                }
                setTimeout("redirect()",3000);
                </SCRIPT>
     
     
     
    		}
     
    		break;
     
    	}
     
    		mysql_close();
     
    ?>


    Merci d'avance!!!

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2007
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 194
    Par défaut
    bonjour,

    il faut que tu mette tes script javascript dans des echo, pour etre prit en compte par php.

    Yasen77

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 263
    Par défaut
    J'pense que j'ai du mal comprendre ta reponse, parc'que sa ne fonctionne pas, j'te montre comment j'ai fait...



    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
     
     
    switch($_POST['action'])
     
    	{
    		case "ajout_membre" :
     
    		if(isset($_POST['pseudo']) or ($_POST['motdepasse']))
     
    			{  
     
     
    		$requete = "INSERT INTO utilisateur (login, pass) VALUES
    		('".$_POST['login']."','".$_POST['motdepasse']."')";
     
    		$resultat = mysql_query($requete) or die(mysql_error());
     
    		if($resultat == TRUE)
     
    		{
     
    		echo "L'inscription a bien été transmise";
     
    		 echo <SCRIPT LANGUAGE="JavaScript">
    								function redirect() {
    					window.location="corine.php"
    				}
    				setTimeout("redirect()",3000); 		  </SCRIPT>
     
     
     
    		}
    			}
     
    		else
     
    		{
     
    		echo "Vous n'avez pas rentré tout les champs obligatoire.";
     
            	echo <SCRIPT LANGUAGE="JavaScript">
    								function redirect() {
    					window.location="n_membre.php"
    				}
    				setTimeout("redirect()",3000); 		  </SCRIPT>
     
     
     
    		}
     
    		break;

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    A priori il te manque des quotes pour que ça fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    echo '<SCRIPT LANGUAGE="JavaScript">
    								function redirect() {
    					window.location="corine.php"
    				}
    				setTimeout("redirect()",3000); 		  </SCRIPT>'
    Sinon tu peux tout simplement fermer les balises <?php pour placer ton code JS
    Mettre du Javascript dans du code PHP
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 263
    Par défaut
    Merci pour ta reponse, j'avais fait une recherche dans les tutoriels, mais j'ai du mal m'orienter...

    Par contre je peux pas fermer mes balises php vu que je veux mettre mon Javascript dans une condition if...

    D'ailleur maintnant ca a l'air de fonctionner mais il me dit qu'il y a une erreur a cause des crochets ferments de mon if et de mon else, je les ai enlevé et forcement sa ne fonctionne plus, avez vous une idée du probleme des crochets?

    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
     
    switch($_POST['action'])
     
    	{
    		case "ajout_membre" :
     
    		if(isset($_POST['pseudo']) or ($_POST['motdepasse']))
     
    			{  
     
     
    		$requete = "INSERT INTO utilisateur (login, pass) VALUES
    		('".$_POST['login']."','".$_POST['motdepasse']."')";
     
    		$resultat = mysql_query($requete) or die(mysql_error());
     
    		if($resultat == TRUE)
     
    		{
     
    		echo "L'inscription a bien été transmise";
     
    		echo '<SCRIPT LANGUAGE="JavaScript">
    								function redirect() {
    					window.location="corine.php"
    				}
    				setTimeout("redirect()",3000); 		  </SCRIPT>'
     
     
     
     
     
    		}
    			}
     
    		else
     
    		{
     
    		echo "Vous n'avez pas rentré tout les champs obligatoire.";
     
            echo '<SCRIPT LANGUAGE="JavaScript">
    								function redirect() {
    					window.location="n_membre.php"
    				}
    				setTimeout("redirect()",3000); 		  </SCRIPT>'
     
     
     
    		}
     
    		break;

  6. #6
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Il te manque un point virgule à la fin de ton dernier echo.

    Et tu peux fermer puis rouvrir tes balises <?php sans problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if (condition) 
    {
    ?>
    <script>
    ....
    </script>
    <?php
    }
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 263
    Par défaut
    Effectivement sa fonctionne mieux avec des points virgules...

    J'pensait pas que la syntaxe des fermeture de php dans une condition pouvais fonctionner!!!


    Merci pour tes précieux conseils!!!

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

Discussions similaires

  1. [MySQL] Probleme avec formulaire PHP 4 vers PHP 5
    Par artgraphy83 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 14/10/2011, 17h52
  2. [MySQL] [PHP] du formulaire php vers easyphp
    Par beurknbba dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 28/08/2009, 13h50
  3. Réponses: 2
    Dernier message: 01/06/2008, 20h46
  4. Réponses: 3
    Dernier message: 05/05/2006, 03h05
  5. [PHP-JS] [javascrip + php] traitement formulaire
    Par Invité dans le forum Langage
    Réponses: 4
    Dernier message: 24/04/2006, 13h13

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