par
arno77 » 03 oct. 2006, 13:39
Voici la fonction
/* ---- connection a la base de donnée ---- */
$serveur = "";
$admin = "";
$mdp = "";
$base = "";
$idr = isset($_POST['nom_classe'])?$_POST['nom_classe']:null;
?>
<html>
<head>
<title>Sélectionner une matiere selon la classe choisie</title>
</head>
<body>
<?php
if(isset($_POST['ok']) && isset($_POST['nom_matiere']) && $_POST['nom_matiere'] != "") {
$classe_selectionnee = $_POST['nom_classe'];
$matiere_selectionnee = $_POST['nom_matiere'];
}
$connexion = mysql_pconnect($serveur, $admin, $mdp);
if($connexion != false) {
$choixbase = mysql_select_db($base, $connexion);
$sql1 = "SELECT `id_classe`, `nom_classe`".
" FROM `classes`".
" ORDER BY `id_classe`";
$rech_classe = mysql_query($sql1);
$code_classe = array();
$nom_classe = array();
$nb_classes = 0;
if($rech_classe != false) {
while($ligne = mysql_fetch_assoc($rech_classe)) {
array_push($code_classe, $ligne['id_classe']);
array_push($nom_classe, $ligne['nom_classe']);
$nb_classes++;
}
}
?>
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" id="chgcls">
<fieldset>
<legend>Ajouter une sous matiere</legend>
Pour la classe de:<br>
<select name="nom_classe" id="nom_classe" onchange="document.forms['chgcls'].submit();">
<option value="-1">- - - Choisissez une classe - - -</option>
<?php
for($i = 0; $i < $nb_classes; $i++) {
?>
<option value="<?php echo($code_classe[$i]); ?>"<?php echo((isset($idr) && $idr == $code_classe[$i])?" selected=\"selected\"":null); ?>><?php echo($nom_classe[$i]); ?></option>
<?php
}
?>
</select><br><br>
<?php
mysql_free_result($rech_classe);
if(isset($idr) && $idr != -1){
$sql2 = "SELECT `id_matiere`, `nom_matiere`".
" FROM `matiere`".
" WHERE `id_classe` = ". $idr ."".
" ORDER BY `id_matiere`;";
if($connexion != false){
$rech_mat = mysql_query($sql2, $connexion);
$nd = 0;
$code_matiere = array();
$nom_matiere = array();
while($ligne_mat = mysql_fetch_assoc($rech_mat)){
array_push($code_matiere, $ligne_mat['id_matiere']);
array_push($nom_matiere, $ligne_mat['nom_matiere']);
$nd++;
}
?>
Dans la matière :<br>
<select name="nom_matiere" id="nom_matiere">
<?php
for($d = 0; $d<$nd; $d++){
?>
<option value="<?php echo($code_matiere[$d]); ?>"<?php echo((isset($matiere_selectionnee) && $matiere_selectionnee == $code_matiere[$d])?" selected=\"selected\"":null); ?>><?php echo($nom_matiere[$d]); ?></option>
<?php
}
?>
</select> <br><br>
J'ajoute la sous matiere :<br>
<input name="nom_sous_matiere" type="text" size="60"><br><br>
<?php
}
mysql_free_result($rech_mat);
}
?>
<br /><input type="submit" value="Envoyer" />
</fieldset>
</form>
<?php
mysql_close($connexion);
}else{
?>
<p>Un incident s'est produit lors de la connexion à la base de données, veuiillez essayer à nouveau ultérieurement.</p>
<?php
}
?>
</body>
</html>
Voici la fonction
[php]/* ---- connection a la base de donnée ---- */
$serveur = "";
$admin = "";
$mdp = "";
$base = "";
$idr = isset($_POST['nom_classe'])?$_POST['nom_classe']:null;
?>
<html>
<head>
<title>Sélectionner une matiere selon la classe choisie</title>
</head>
<body>
<?php
if(isset($_POST['ok']) && isset($_POST['nom_matiere']) && $_POST['nom_matiere'] != "") {
$classe_selectionnee = $_POST['nom_classe'];
$matiere_selectionnee = $_POST['nom_matiere'];
}
$connexion = mysql_pconnect($serveur, $admin, $mdp);
if($connexion != false) {
$choixbase = mysql_select_db($base, $connexion);
$sql1 = "SELECT `id_classe`, `nom_classe`".
" FROM `classes`".
" ORDER BY `id_classe`";
$rech_classe = mysql_query($sql1);
$code_classe = array();
$nom_classe = array();
$nb_classes = 0;
if($rech_classe != false) {
while($ligne = mysql_fetch_assoc($rech_classe)) {
array_push($code_classe, $ligne['id_classe']);
array_push($nom_classe, $ligne['nom_classe']);
$nb_classes++;
}
}
?>
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" id="chgcls">
<fieldset>
<legend>Ajouter une sous matiere</legend>
Pour la classe de:<br>
<select name="nom_classe" id="nom_classe" onchange="document.forms['chgcls'].submit();">
<option value="-1">- - - Choisissez une classe - - -</option>
<?php
for($i = 0; $i < $nb_classes; $i++) {
?>
<option value="<?php echo($code_classe[$i]); ?>"<?php echo((isset($idr) && $idr == $code_classe[$i])?" selected=\"selected\"":null); ?>><?php echo($nom_classe[$i]); ?></option>
<?php
}
?>
</select><br><br>
<?php
mysql_free_result($rech_classe);
if(isset($idr) && $idr != -1){
$sql2 = "SELECT `id_matiere`, `nom_matiere`".
" FROM `matiere`".
" WHERE `id_classe` = ". $idr ."".
" ORDER BY `id_matiere`;";
if($connexion != false){
$rech_mat = mysql_query($sql2, $connexion);
$nd = 0;
$code_matiere = array();
$nom_matiere = array();
while($ligne_mat = mysql_fetch_assoc($rech_mat)){
array_push($code_matiere, $ligne_mat['id_matiere']);
array_push($nom_matiere, $ligne_mat['nom_matiere']);
$nd++;
}
?>
Dans la matière :<br>
<select name="nom_matiere" id="nom_matiere">
<?php
for($d = 0; $d<$nd; $d++){
?>
<option value="<?php echo($code_matiere[$d]); ?>"<?php echo((isset($matiere_selectionnee) && $matiere_selectionnee == $code_matiere[$d])?" selected=\"selected\"":null); ?>><?php echo($nom_matiere[$d]); ?></option>
<?php
}
?>
</select> <br><br>
J'ajoute la sous matiere :<br>
<input name="nom_sous_matiere" type="text" size="60"><br><br>
<?php
}
mysql_free_result($rech_mat);
}
?>
<br /><input type="submit" value="Envoyer" />
</fieldset>
</form>
<?php
mysql_close($connexion);
}else{
?>
<p>Un incident s'est produit lors de la connexion à la base de données, veuiillez essayer à nouveau ultérieurement.</p>
<?php
}
?>
</body>
</html>[/php]