Bonjour,

J'aimerai pour faire un refresh sur une frame. Mais je dois avoir un problème dans mon script (p4.php) car ça ne fonctionne pas..

Je vous donne le contexte :
J'explique vite fait mon contexte :
- J'ai un formulaire fait deslistes déroulantes(qui s'implémentent toute seul depuis ma BDD) dans lesquels il y a une option ajout, qui doit permettre de rajouté une nouvelle option saisie par l'utilisateur.
- Le rafraichissement de la liste déroulante doit être local, c'est-à-dire que sur celle ou l'on a voulu ajouter une nouvelle entrée.

D'ailleurs si vous avez une idée de script qui le fasse assez simplement je suis preneur (vu que je suis novice, étudiant en BioInfo M1)

___________

Moi j'ai essayé de tout "canalisé" dans des FRAMES différentes, qui font appel à un DIV caché, ou je rentre ma nouvelle valeur (quand l'option ajout est sélectionné).
De là, une page s'ouvre pour récupérer la valeur de l'INPUT et la transmettre à ma BDD. Ensuite, j'aimerai que la FRAME (dans laquel il y avait la liste déroulante) fasse un refresh, pour la nouvelle option soit sélectionnable par l'utilisateur.

J'espère que j'ai été assez clair

____________
Ma page appelante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
<HTML>
<HEAD>
<TITLE>Titre de page</TITLE>
</HEAD>
<FRAMESET cols="140,*">
	<FRAMESET rows="*,50" frameborder=0>
		<FRAME name="FRAME1" src="essai20.php">
		<FRAME name="FRAME2" src="essai21.php">
	</FRAMESET>
	<FRAME name="FRAME3" src="essai1.php">
</FRAMESET>
Mon script du formulaire :
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
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
 
	<head>
<script type="text/javascript">
function griser(liste)
{
if ( liste[liste.selectedIndex].value=="saisie" ){
 
document.getElementById("moncalque").style.visibility="visible";
		}
}
</SCRIPT>	
	</head>
 
	<body>
	<DIV id="moncalque" style="position:absolute;top:200px;left:200px;visibility:hidden; border-style: solid ; border-color:blue ;background-color:white;">
		<form name="general" action="p4.php" method="post">
		Entrez une nouvelle valeur : </td><td><input type="text" name="nvx" id="list1">
		<input type="submit" value="Continuer" /> 
		</form>
	</DIV>
	<select name="list2" id="list2" class="ButtonL" onchange="griser(this);"> 
		<option value="choix">Choix</option>
					<?php
					mysql_connect("localhost", "root", ""); 
					mysql_select_db("fmov2"); 
 
					$modif = mysql_query("SELECT * FROM plante");			
					while ($modif1 = mysql_fetch_array($modif))
					{
						$mod1 = $modif1['nom'];
 
						echo "<option value=\"$mod1\"> $mod1 </option>";
					}
					mysql_close(); 
					?>
		<option value="saisie">saisie</option>
</select>
</body>
</html>
et p4.php :
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
<html>
<head>
<script type="text/javascript">
function load()
{
parent.frames["frame3"].window.location="essai1.php";
}
</script>
</head>
 
<body onload="load()">
<?php
$nvx = $_POST['nvx'];
mysql_connect("localhost", "root", ""); 
mysql_select_db("fmov2"); 
 
mysql_query("insert into plante values ('$nvx');");
mysql_close();
?>
</body>
</html>
Ca fait une semaine que je suis sur ce problème, j'ai essayé un peu toute les idées qui me passé par la tête..
Si vous pouviez m'aider ça serai cool (surtout ne pas me renvoyer vers une page où il y a des trucs qui sont plus ou moins en rapport, svp)..


merci de votre attention,


Bien cordialement,
Onylink