Ajax ou JS

Fermé
Albatrooss - Modifié par jordane45 le 18/03/2015 à 09:40
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 - 18 mars 2015 à 20:47
Bonjour, la communauté
J'ai un pti souci avec le rafraichissement automatik
voici mon formulaire:
<form name="form1_details-fiche" action="insertdetailsfiche.php" method="POST">
   <p align="center"> </p>
   <table width="546" height="309" border="1" align="center">
        <tr>
          <th width="241" scope="col">Commissariat</th>
          <th width="289" scope="col"><select name="select">
            <?php
do {  
?>
            <option value="<?php echo $row_RsCommi['NOM_COMMISSARIAT']?>"<?php if (!(strcmp($row_RsCommi['NOM_COMMISSARIAT'], $row_RsCommi['NOM_COMMISSARIAT']))) {echo "selected=\"selected\"";} ?>><?php echo $row_RsCommi['NOM_COMMISSARIAT']?></option>
              <?php
} while ($row_RsCommi = mysql_fetch_assoc($RsCommi));
  $rows = mysql_num_rows($RsCommi);
  if($rows > 0) {
      mysql_data_seek($RsCommi, 0);
   $row_RsCommi = mysql_fetch_assoc($RsCommi);
  }
?>
          </select>          </th>
        </tr>
        <tr>
          <th scope="row">Date Situation </th>
          <td><div align="center">
            <select name="selectdate">
              <?php
  for($i=1;$i<=31;$i++){
   echo "<option value='$i'>$i</option>";
  }
  ?>
  </select>
            <select name="mois">
              <?php
  for($i=Janvier;$i<=Decembre;$i++){
   echo "<option value='$i'>$i</option>";
  }
  ?>
            </select>
            <select name="annee">
 <?php
  for($i=1960;$i<=2025;$i++){
   echo "<option value='$i'>$i</option>";
  }
  ?>
</select>
          </div></td>
        </tr>
        <tr>
          <th scope="row">N° Situation </th>
          <td><div align="center">
            <input value="" type="text" name="numsit" size="10"/>
          </div></td>
        </tr>
        <tr>
          <th scope="row">Type Indisponibilité </th>
          <td><div align="center">
            <select name="select2">
              <?php
do {  
?>
              <option value="<?php echo $row_RsTypeindispo['etat']?>"<?php if (!(strcmp($row_RsTypeindispo['etat'], $row_RsTypeindispo['etat']))) {echo "selected=\"selected\"";} ?>><?php echo $row_RsTypeindispo['etat']?></option>
              <?php
} while ($row_RsTypeindispo = mysql_fetch_assoc($RsTypeindispo));
  $rows = mysql_num_rows($RsTypeindispo);
  if($rows > 0) {
      mysql_data_seek($RsTypeindispo, 0);
   $row_RsTypeindispo = mysql_fetch_assoc($RsTypeindispo);
  }
?>
            </select>
            </div></td>
        </tr>
        <tr>
          <th scope="row">N° Indisponibilité </th>
          <td><div align="center">
            <input value="" type="text" name="numindispo" size="10"/>
          </div></td>
        </tr>
        <tr>
          <th scope="row">Nom Agent </th>
          <td><div align="center">
            <select name="select3">
              <?php
do {  
?>
              <option value="<?php echo $row_RsNomAgent_parCommi['nom']?>"<?php if (!(strcmp($row_RsNomAgent_parCommi['nom'], $row_RsNomAgent_parCommi['nom']))) {echo "selected=\"selected\"";} ?>><?php echo $row_RsNomAgent_parCommi['nom']?></option>
<?php
} while ($row_RsNomAgent_parCommi = mysql_fetch_assoc($RsNomAgent_parCommi));
  $rows = mysql_num_rows($RsNomAgent_parCommi);
  if($rows > 0) {
      mysql_data_seek($RsNomAgent_parCommi, 0);
   $row_RsNomAgent_parCommi = mysql_fetch_assoc($RsNomAgent_parCommi);
  }
?>
            </select>
          </div></td>
        </tr>
        <tr>
          <th scope="row">N° Agent </th>
          <td><div align="center">
            <input value="" type="text" name="numagent" size="10"/>
          </div></td>
        </tr>
        <tr>
          <th colspan="2" scope="row"><input type="submit" name="Submit" value="Detailler" /></th>
          </tr>
      </table>
   <p align="center"> </p>

 </form>


et voici les requêtes à inserer pour chaque champ
/*   Afficher le N° Situation */
select s.N_SITUATION
from 
situation s JOIN commissariat c ON c.N_COMMISSARIAT = s.N_COMMISSARIAT
where c.NOM_COMMISSARIAT='talangaii' and s.`DATE`='2015-02-25

Ensuite, même chose pour les autres en utilisant l'Ajax
Select Type indisponibilité, affiche le N°indisponibilité

Code:
/*   Afficher les types d'indisponibilité */

select distinct etat
from indisponibilite
order by etat;

/*   Afficher les N° Indisponibilité */
select N_indisponibilite 
from indisponibilite
where etat='Déserteurs' and N_SITUATION=3

Ensuite , même chose pour l'agent en utilisant l'ajax

Select Nom agent, affiche le N° agent

code:
/*   Afficher les nom des agents relié au commissariat sélectionné */

select CONCAT_WS(' ', a.N_AGENT, a.NOM,a.PRENOM) non
from Agent a JOIN service      s on (a.N_SERVICE = s.N_SERVICE)
             JOIN commissariat c ON c.N_COMMISSARIAT = s.N_COMMISSARIAT
             where c.NOM_COMMISSARIAT='talangaii'
             and year(a.DATE_Fin_Affectation)='3000'
             
/*   Afficher le N° de l'agent */

select a.N_AGENT
from Agent a JOIN service      s on (a.N_SERVICE = s.N_SERVICE)
             JOIN commissariat c ON c.N_COMMISSARIAT = s.N_COMMISSARIAT
             where (c.NOM_COMMISSARIAT='talangaii' and year(a.DATE_Fin_Affectation)='3000')
             AND   (CONCAT_WS(' ', a.N_AGENT, a.NOM,a.PRENOM)='6 test1 pres test 1')

En fait je veux que lorsqhue je selectionne un champ, un autre apparait de façon statique.

Merci d'avance à tous !



EDIT : Ajout des balises de code
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

3 réponses

jordane45 Messages postés 38238 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 6 septembre 2024 4 689
18 mars 2015 à 09:48
Bonjour,

1 - Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code


2 - ... ta question n'est pas très clair...
c'est ça ta question ? :
En fait je veux que lorsqhue je selectionne un champ, un autre apparait de façon statique.


- Quand tu sélectionnes un champ .... lequel / lesquels ??
- Un autre apparait.... de quel type ? où ? contenant quoi ?
- Qu'est-ce que "statique" signifie pour toi ?

NB: Si tu souhaites faire de l'AJAX.. je t'invite dans un premier temps à mettre JQUERY sur ton site. Cette bibliothèque Javascript permet (entre autres choses..) d'écrire l'appel à l'ajax avec Syntaxe simplifiée....plus simple à utiliser que xmlhttprequest (du "pure" javascript")
0
Merci Jordan45; en fait tout d'abord je prend acte de ta remarque, pour vous evitez de lire toutes ces lignes de codes, et m'a question est cependant la suivante:

Je veux que lorsque je selectionne le commissariat, et que je précise la date situation, le N° situation doit apparaitre.

Ensuite, lorsque je selectionne le type indisponibilité, le n° indisponibilité doit apparaitre.

Et ensuite lorsque je selectionne le nom Agent, le n° agent est censé apparaitre et après tout ça je ne popule que N° iondisponibilité et N° Agent dans ma table.
0
jordane45 Messages postés 38238 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 6 septembre 2024 4 689
18 mars 2015 à 10:20
Je vais te paraitre tatillon... mais ce n'est toujours pas assez précis....

Je veux que lorsque je selectionne le commissariat, et que je précise la date situation, le N° situation doit apparaitre.

Tu selectionnes.... Où (quel élément HTML de ta page.. / que contient il ) ?
Le N° doit apparaitre ....où (dans quel élément HTML de ta page) ?

Ensuite, lorsque je selectionne le type indisponibilité, le n° indisponibilité doit apparaitre.

Tu selectionnes.... Où (quel élément HTML de ta page.. / que contient il ) ?
Le N° doit apparaitre ....où (dans quel élément HTML de ta page) ?

Et ensuite lorsque je selectionne le nom Agent, le n° agent est censé apparaitre

Tu selectionnes.... Où (quel élément HTML de ta page.. / que contient il ) ?
Le N° doit apparaitre ....où (dans quel élément HTML de ta page) ?


après tout ça je ne popule que N° iondisponibilité et N° Agent dans ma table.

Ca doit se déclencher automatiquement ou après un clic sur un bouton ?


Sachant déjà que... pour déclencher des actions lorsqu'on sélectionne un élément SELECT ... il te suffit d'utiliser la méthode : ONCHANGE
0
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 228
18 mars 2015 à 20:47
'lut, au passage, à lire impérativement: PHP: L'extension MySQL est obsolète!
Autrement dit, il faut arrêter de s'en servir, s'en débarrasser!
0