begin process at 2012 05 29 21:37:49
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

CSS

 > 

Général

 > 

Probleme traitement de donnée d'un formulaire recuperer en ajax


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probleme traitement de donnée d'un formulaire recuperer en ajax

lundi 21 mai 2007 à 16:48:22 | Probleme traitement de donnée d'un formulaire recuperer en ajax

ssabard

Bonjour j'ai un soucis je n'arrive pas a recuperer les values des select et input text remplit a l'aide d'ajax pour traiter un formualire.

J'ai une liste de sous-theme generer a partir du theme general selectionné et la cote est generer a partir du code de la sous categorie.

Mais lorsque je veux recuperer ma valeur par post : $_post["cote"] et $_post["sst"] sont vide

Voici le code :
Formulaire.php

<form name="ajout_ouvr" id="empr_ouvr" method="POST" action="traitement.php?type=test">
<select name='theme' id='theme' onChange='change_sstheme()'>
                    <option value=''>Aucun</option>
                    <?php
                        $enum = new Enumeration();
                        $res = $enum->tesThemes();
                        while($row = mysql_fetch_assoc($res)){?>
                            <option value="<?php echo $enum->non_accent($row['theme']);?>"><?php echo $enum->accent($row['theme']);?></option>
                        <?php }
                    ?>
                </select>
   Sous-Th&egrave;me principal :
<div id='sous_theme' >
                <select name="sst" id="sst" onChange="change_cote()">
                    <option value=''>Choisir un th&egrave;me</option>
                </select>
                </div>
            <p>Cote : </p><div id="c">
                <input type="text" name="cote2" id="cote2" value=""/>
<input type="submit" name="ajout" value="Valider">


ajax.js :

function getXhr(){
                var xhr = null;
                if(window.XMLHttpRequest){ // Firefox et autres
                   xhr = new XMLHttpRequest();
                  
                }
                else if(window.ActiveXObject){ // Internet Explorer
                   try {
                            xhr = new ActiveXObject("Msxml2.XMLHTTP");
                        } catch (e) {
                            xhr = new ActiveXObject("Microsoft.XMLHTTP");
                        }
                }
                else { // XMLHttpRequest non supporté par le navigateur
                   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
                   xhr = false;
                }
                            return xhr;
            }
           
            function change_sstheme(){
               
                var xhr = getXhr();
                   
                // On défini ce qu'on va faire quand on aura la réponse
                xhr.onreadystatechange = function(){
                   
                    // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
                    if(xhr.readyState == 4 && xhr.status == 200){
                        di = document.getElementById('sous_theme');
                        di.innerHTML = xhr.responseText;
                    }
                }

                // Ici on va voir comment faire du post
                xhr.open("POST","ajaxsstheme.php",true);
                // ne pas oublier ça pour le post
                xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
                // ne pas oublier de poster les arguments
                // ici, l'id du theme
                theme = document.getElementById('theme').options[document.getElementById('theme').selectedIndex].value;
                //alert(idtheme);
                xhr.send("theme="+theme);
               
               
            }
           
function change_cote(){
               
                var xhr = getXhr();
                   
                // On défini ce qu'on va faire quand on aura la réponse
                xhr.onreadystatechange = function(){
                   
                    // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
                    if(xhr.readyState == 4 && xhr.status == 200){
                        di = document.getElementById('c');
                        di.innerHTML = xhr.responseText;
                    }
                }

                // Ici on va voir comment faire du post
                xhr.open("POST","ajaxcote.php",true);
                // ne pas oublier ça pour le post
                xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
                // ne pas oublier de poster les arguments
                // ici, l'id de l'auteur
                soustheme = document.getElementById('sst').options[document.getElementById('sst').selectedIndex].value;
               
                //alert(idsoustheme);
                xhr.send("sousTheme="+soustheme);
                               
            }
           
ajaxcote.php :
<?php
    include ("../class/Enumeration.class.php");
    if($_REQUEST["sousTheme"] != ''){
        $enum = new Enumeration();
        $res = $enum->taCoteAjax($_REQUEST["sousTheme"]);
        while($row = mysql_fetch_assoc($res))
        {?>
           
            <div id="c">
                <input type="text" name="coteajax" id="coteajax" value="<?php echo $row['code'];?>"/>
                </div>
    <?php }
    }
    else{
    ?>
        <div id="c">
                <input type="text" name="cote" id="cote" value=""/>
        </div>
    <?php } ?>

ajaxsoustheme.php:

<script type="text/javascript" src="<?php echo $server_dir;?>commun/ajax.js"></script>

<?php
    include ("../class/Enumeration.class.php");?>
    <div id='sous_theme' >
                <select name="sst" id="sst" onChange="change_cote()">
    <?php
    if($_REQUEST["theme"] != ''){
        $enum = new Enumeration();
        $res = $enum->tesSousThemesAjax($_REQUEST["theme"]);
        while($row = mysql_fetch_assoc($res)){?>
            <option value='<?php echo $enum->non_accent($row["sous_theme"]);?>'><?php echo $enum->accent($row['sous_theme']);?></option>
        <?php }
    }
    else {?>
        <option value=''>Choisir un th&egrave;me</option>
        <?php }?>
    </select>
                </div>

Si quelqu'un voit le probleme...

hey[:o)]
mardi 22 mai 2007 à 07:31:09 | Re : Probleme traitement de donnée d'un formulaire recuperer en ajax

bultez

Membre Club
Bonjour,
    je n'ai vu nulle part qu'on transmettait cote ou sst en post.
    sousTheme,theme oui.        mal lirais-je ?

Cordialement            Bul     [mon Site]     [M'écrire]





Cette discussion est classée dans : php, post, row, theme, xhr


Répondre à ce message

Sujets en rapport avec ce message

Formulaire [ par lesurfeurduweb ] Bonjour, Je fais un site un peu complexe pour gérer des livraisons. Pour cela, j'ai un formulaire ou je choisi le département de livraison. Par Javas Envoyer plusieurs variables dans le open [ par fabricioliking ] Bonjour, Voila j'aimerai pouvoir envoyer grâce au javascript dans une page php deux variables.voici un extrait du code contenant mon formulaire : [COD deux listes liées [ par devmouad ] Bonjour, je veux crée deux liste liées j'utilise un code ajax que j'ai trouvé dans un forum,mais j'arrive pas a le faire fonctioner, voici les deux li ajax / php envoi en post de variables a une page php non prise en compte [ par milan78 ] bonjour,j ai un formulaire je recolte les donnees de l utilisateur ensuite les traites avec fonction ajax.udapter afin de l afficher dans une div sans Mettre à jour la 3e liste déroulante en même temps que la seconde liste déroulante [ par beegeezzz ] Bonjour tout le monde,J'ai lié trois listes déroulantes avec ajax.La première liste déroulante contient par exemple :BA1BA2BA3Quand je choisis BA2, le [AJAX] Plusieurs Champs mis à jour à partir d'un seul [ par Souboc ] Bonjour, En m'inspirant d'un tuto, je souhaite mettre à jour plusieurs champs de formulaire en fonction du choix fait dans une dropdown. Voilà mon co Accès responseText avec readyState = 3 [ par ilvec ] Bonjour,Voici mon problème :Je fais appel à une page php via AJAX    var xhr=getXhr();    xhr.open("GET", "page.php", true);    xhr.onreadystatechange une seul variable post passe avec ajax ? [ par caviar ] Saluté...j'ai un petit problème bizare avec une fonction ajaxen fait un seul des paramètres que je veux envoyer à mon script php passe apparamentsi le javascript liste liée perte d'indice [ par fouedk2 ] bonjour, j'ai une liste déroulante "valideld1.php" qui déclenche des l'apparition de 7 listes déroulante identique "valideld2.php" problème ce passe [php/java] Passage de variable? [ par titi2111 ] Bonjour, Pour vous présenter mon problème j'ai créé 3 pages simples. Je voudrais pouvoir modifier une variable php à l'aide d'un champ texte quelque s


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,011 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales