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 :

Bouton valider avec des listes déroulantes.


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 128
    Points : 62
    Points
    62
    Par défaut Bouton valider avec des listes déroulantes.
    Bonjours à tous !

    J'ai encore besoins de vos lumière.
    J'ai deux lsites déroulantes liées entres elles et je souhaiterais tout simplement récupérer la valeur de ces dernières et l'envoyer vers une autre page php..

    Voici mon code j'ai utiliser du AJAX pour faire mes deux listes déroulantes.

    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
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    <?php
     
      // a placer en TOUT debut de chaque page
      session_start();
      if(! isset($_SESSION['nom'])) {
        header('Location: session_form.html');
        exit();
      }
    include "DB.inc.php";
    include "fctAux.inc.php";
      enTete();
      contenu();
      pied();
     
      function contenu(){
     
    	menu();
    ?>
     
    <html>
    	<head>
    		<title>Tutoriel Ajax (XHTML + JavaScript + XML)</title>
    		<script type='text/javascript'>
     
    			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;
    			}
     
    			/**
    			* Méthode qui sera appelée sur le click du bouton
    			*/
    			function go(){
    				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){
    						if (xhr.status == 200 || xhr.status == 0){
    							leselect = xhr.responseText;
    							// On se sert de innerHTML pour rajouter les options a la liste
    							document.getElementById('class').innerHTML = leselect;
    						}
    						else {
    							alert ("erreur :" + xhr.status+ " " + xhr.statusText);
    						}
    					}
    				}			
     
    				// Ici on va voir comment faire du post
    				xhr.open("POST","ajax2.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
    				sel = document.getElementById('department');
    				idDepartment = sel.options[sel.selectedIndex].value;
    				xhr.send("idDepartment="+idDepartment);
    			}
    		</script>
    	</head>
    	<body>
    		<form method="get" action="test.php>
    			<fieldset style="width: 500px">
    				<legend>Catagories search</legend>
    				<label>Department</label>
    				<select name='departement' id='department' onchange='go()'>
    					<option value='-1'>None</option>
    					<?php					
    						$sql1 = "select distinct(d_name) as D_NAME from dcs_v order by D_NAME";
    						$db = new DB();
    						$t = $db->select($sql1);
    						$selected = '';
    					   //$tuple->D_NAME = array();
    						for ($i = 0; $i < count($t); $i++) {
    							$tuple =  $t[$i];
    							echo "\t",'<option value="', $tuple->D_NAME ,'"', $selected ,'>', $tuple->D_NAME ,'</option>',"\n";
    							$selected='';
     
    						}
    					?>
    				</select>
    				<label>Classes</label>
    				<div id='class' style='display:inline'>
    				<select name='classe'>
    					<option value='-1'>Choose Class</option>
    				</select>
    				</div>
    				<input type="submit" value="Validate">
    			</fieldset>
    		</form>
    	</body>
    </html>
     
    <?php
    }
    ?>
    Mon input submit me renvoie vers une page avec comme lien suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    http://127.0.0.1:8080/Site/test.php%3E%3Cfieldset%20style=?departement=ACQUA+DI+PARMA&classe=NOT+INDICA
    departement = valeur de ma première liste déroulante
    classe = valeur de ma deuxième liste déroulante.

    Actuellement voici le message d'erreur
    Accès interdit!

    Vous n'avez pas le droit d'accéder à l'objet demandé. Soit celui-ci est protégé, soit il ne peut être lu par le serveur.

    Si vous pensez qu'il s'agit d'une erreur du serveur, veuillez contacter le webmestre.

    Error 403

    127.0.0.1
    Apache/2.4.4 (Win32) PHP/5.4.14
    Donc j'ai regarder problème de droit tout ça sans succès..

    En fait je pense que mon problème c'est le lien car un lien tout simple comme celui ci fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://127.0.0.1:8080/Site/test.php
    Alors voila j'espère être clair et que vous pourrez m'aider

  2. #2
    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 : 43
    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
    Points : 7 503
    Points
    7 503
    Par défaut
    action="test.php
    c'est un oublie ou c'est réellement ton code?
    la vie n'est pas cirrhose des foies ...

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

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2012
    Messages : 128
    Points : 62
    Points
    62
    Par défaut
    :O on va dire que c'est un oublie dans mon code.....
    Plus sérieusement c'est que c'est ça le problème..

    J'ai pas fais attention et j'ai pas vu cette incroyable faute

    Merci beaucoup :s

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 09/03/2009, 19h01
  2. [MySQL] IF avec des listes déroulantes
    Par HekThor dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 14/11/2008, 09h54
  3. Problème avec des listes déroulantes liées
    Par guitsch dans le forum GTK+ avec C & C++
    Réponses: 9
    Dernier message: 22/10/2008, 16h07
  4. Réponses: 6
    Dernier message: 14/12/2006, 11h36
  5. problème avec le innerHTML des listes déroulantes
    Par gisele dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 27/07/2006, 18h01

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