Exercice : liste de données + remplisage de champ

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Exercice : liste de données + remplisage de champ

Re: Exercice : liste de données + remplisage de champ

par Cerbere1980 » 29 avr. 2010, 14:16

Ajax.

Ah... Bon, je vais devoir apprendre un truc supplémentaire alors ! :D

Merci pour ton code et ta réponse. :)

Re: Exercice : liste de données + remplisage de champ

par jagogordonne » 29 avr. 2010, 13:51

Bonjour,

je pense avoir saisie ton problème tu dois utilisé ajax, javascript et php combiné si tu veux que sa se fasse sans rafraichissement de ta page ci-joint un exemple de fonction, dans la page requetes_abattage_ajax.php tu met ta requète cherche sur google tu trouvera ton bohneur avec le mot clef http_request.
function four1() {
        var url="http://127.0.0.1/supervision/requetes_abattage_ajax.php";
        var http_request = false;
                if (window.XMLHttpRequest) {// Firefox et autres
                        http_request = new XMLHttpRequest();
                        if (http_request.overrideMimeType) {
                                http_request.overrideMimeType('text/xml');
                        }
                }       else if(window.ActiveXObject) { // Internet Explorer
                                try {
                                        http_request = new ActiveXObject("Msxml2.XMLHTTP");
                                } catch (e) {
                                        try {
                                                http_request = new ActiveXObject("Microsoft.XMLHTTP");
                                        } catch (e) {}
                                }
                        } 
                if (!http_request) {
                        alert('Abandon : (Impossible de créer une instance XMLHTTP)');
                        return false;
                }
                http_request.onreadystatechange = function () {
                traitementReponseFOUR(http_request); }
                http_request.open('POST',url,true);
                http_request.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
                var parametre = document.getElementById('matricule_four_prerempli').value;
                http_request.send('parametre='+parametre+'&action=REMP_four');
        }
        function traitementReponseFOUR(http_request) {
                var affich="";
                if (http_request.readyState == 4) {
                        if (http_request.status == 200) {
                                results = http_request.responseText.split(",");
                                if (results[1] == 1) {
                                document.getElementById('titre_four_prerempli').selectedIndex = 0;
                                }
                                if (results[1] == 2) {
                                document.getElementById('titre_four_prerempli').selectedIndex = 1;
                                }
                                if (results[1] == 3) {
                                document.getElementById('titre_four_prerempli').selectedIndex = 2;
                                }
                                document.getElementById('nom_four_prerempli').value=results[2];
                                document.getElementById('prenom_four_prerempli').value=results[3];
                                document.getElementById('tel_four_prerempli').value=results[4];
                                document.getElementById('rue_four_prerempli').value=results[5];
                                document.getElementById('CP_four_prerempli').value=results[6];
                                document.getElementById('Ville_four_prerempli').value=results[7];
                                document.getElementById('proprio_four_prerempli').checked=false;
                                document.getElementById('exploitant_four_prerempli').checked=false;
                                if (results[8]=="Y") {
                                        document.getElementById('exploitant_four_prerempli').checked=true;
                                }
                                if (results[9]=="Y") {
                                        document.getElementById('proprio_four_prerempli').checked=true;
                                }
                        } else {
                                alert(http_request.status);
                                alert('Un problème est survenu avec la requête.');
                        }
                }
        }

Re: Exercice : liste de données + remplisage de champ

par Cerbere1980 » 29 avr. 2010, 13:27

Bonne rencontre,

Je me permets de relancer ce post.

J'ai posté sur un autre forum et je n'ai pas eu non plus de réponse. J'en viens a me demander si ma demande est bien formuler ?

Peut être que c'est d'une simplicité évidente ?

D'avance, merci pour votre aide.

Cerbère.

Exercice : liste de données + remplisage de champ

par Cerbere1980 » 28 avr. 2010, 10:09

Bonne rencontre,

Par manque de maîtrise et de temps, j'ai pris l'habitude de faire :

Une page ajout, une page modifier, une page liste des données. Au niveau interface, on peut mieux faire parce qu'en fait, on doit toujours passer par liste des données pour savoir si on doit ajouter un élément. a moins de connaître les données par cœur....

Au niveau interface, il est sans doute mieux d'avoir la liste et dans la même page des champs pour ajouter ou modifier.

Je veux donc m'entrainer en réalisant ceci :

http://www.cerbere.org/temp/exemple.pdf

De base, je ne savais pas trop comment faire alors je viens vous proposer mon idée de réalisation pour voir si je suis dans le bon.

1. Les champs du dessus est un simple formulaire.
2. La liste en question est en fait une liste déroulante mais étendue.
3. Quand on sélectionne une ligne -> javascript qui remplit les champs en découpant la chaîne.
4. Quand on passe d'une page à l'autre la variable dans url varie pour commander la requête qui remplit la liste.

L'étape 3 me semble un peu lourd et le javascript ce n'est quand même pas top mais je ne vois pas comment faire autrement.

Avez-vous des tutoriels sur la manière de faire ce genre de chose ?

D'avance, merci.
Cerbère.