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 :

Problème avec submit d'un form vers une page PHP


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 179
    Points : 97
    Points
    97
    Par défaut Problème avec submit d'un form vers une page PHP
    Bonjour

    J'essaie d'utiliser un code PHP + Javascript pour changer la locale de mon site web.
    Je veux qu'un clic sur un lien 'FR' 'EN' 'ES' change la locale, tout en conservant la page courante.

    J'ai pensé à faire un formulaire avec un input hidden, et de soumettre ce formulaire en javascript; mais au final les données ne sont jamais reçues par php.

    J'ai çà dans mon code
    index.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php include 'include/header.php';?>
    header.php
    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
    <?php 
    	session_start();
     
    	include_once 'include/Constants.php';
    	include_once 'include/locale.php';
     
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
     
     
    <script type="text/javascript">
     
    function setLocale(newLocale){
     
    	document.formLocale.language.value = newLocale;
    	document.formLocale.submit();
    };
     
    </script>
     
    </head>
    <body>
    	<div class="header">
     
    		<!-- language -->
    		<div class="lang">
    			<form action="#" name="formLocale" method="post">
    				<input type="hidden" id="language"></input>
    			</form>
    			<!-- <a href="" onclick="javascript:setLocale('fr')">FR</a>&nbsp;
    			<a href="" onclick="javascript:setLocale('en')">EN</a>&nbsp;
    			<a href="" onclick="javascript:setLocale('es')">ES</a>&nbsp;-->
     
    			<?php foreach ($AVAILABLE_LANGUAGES as $languageKey => $languageValue) { ?>
    				<a href="" onclick="javascript:setLocale('<?=$languageKey?>')"><?=$languageValue?> POST</a>&nbsp;
     
    			<?php }?>
    		</div>
    Dans Constants.php j'ai çà:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
     
    	$AVAILABLE_LANGUAGES = array(
    					'fr' => 'FR',
    					'en' => 'EN',
    					'es' => 'ES' );
    ?>
    et dans locale.php j'ai çà:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
     
    	print_r('</br>post: ');
    	print_r($_POST);
     
    ?>
    Comme vous le voyez, dans header.php, il y a un form avec un input hidden, et l'action de ce form est # (pour aller vers la même page)
    Comme toutes les pages passent par header.php, j'ai supposé qu'au reload il repasse par locale.php et donc dans $_POST je devrais trouver ma valeur language. Mais je ne la trouve pas, rien ne semble passé en POST.

    Voyez-vous un souci?

    Merci d'avance.
    Nicolas.

  2. #2
    Membre émérite
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Points : 2 399
    Points
    2 399
    Par défaut
    il ne faut pas mettre # dans action si tu veux renvoyer vers la meme page mais plutôt le laisser vide.

  3. #3
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 179
    Points : 97
    Points
    97
    Par défaut
    Ok merci je vais essayer çà!

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

Discussions similaires

  1. envoi de variables vers une page php avec WGET
    Par Othasm dans le forum VBScript
    Réponses: 0
    Dernier message: 20/06/2011, 16h45
  2. Redirigé une page html vers une page php
    Par Invité dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 15/08/2006, 12h24
  3. lien vers une page php
    Par sousou_ dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 07/08/2006, 20h10
  4. diriger une page web vers une page php
    Par moonia dans le forum Langage
    Réponses: 7
    Dernier message: 11/04/2006, 11h41
  5. passage de données d'une popup vers une page PHP
    Par loukili81 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 28/03/2006, 18h54

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