Bonjour à tous,
Je suis débutant en php et mysql et depuis trois jours je suis confronté à un problème qui m'empêche véritablement de continuer mon travail.
Je dispose de trois fichiers:
1. produit qui est le formulaire dans lequel se trouve un textarea chargé de recupérer les composants sélectionnées dans une liste provenant d'une fenêtre popup
2.test une fenêtre popup contenant la liste des composants
3.form le fichier paramètre du formulaire produit
Je recupère les composants ainsi que leurs identifiants dans le textarea mais le problème est que les identifiants sont recupérés de façon concaténé et moi je voudrais les recupérer de façon sequentielle(lorsque je selectionne xcomposant je recupère l'identifiant x et sur ycomposant l'identifiant y et donc le resultat est xy qui est un identifiant inconnu de composant).Comment recupérer x et ensuite y.
voici le code
produit
<head>
<SCRIPT type="text/JavaScript">
function OuvrirPopup(page,nom,option) {
window.open(page,nom,option);
}
</SCRIPT>
</head>
<FORM name='produit'METHOD="POST" ACTION="/form.php">
<table border="0" align="left" >
<div align ="left">
<tr align="left">
<td><font size ="4" color ="#0000CC">Type de composant</font></td>
<td>
<?php
// Fonction de connexion à la base de données
connexion_DB('test');
$req=mysql_query("select * from type_composant order by nom asc");
$total= mysql_num_rows($req);
if($total) {
while($data = mysql_fetch_array($req)) //( c'est pour te donner les résultats ligne par ligne )
{
$nom=$data['nom'] ; $id=$data['id'];
echo '<input type="checkbox" name="type_composant[]" value="',$id,'" onClick=\'OuvrirPopup("/produit/test.php","liste","width=300,height=150,menubar=no,status=no")\'/>' ;
echo $nom;
echo '</br>';
}
}
?>
</td></tr>
<tr align="left">
<td><font size=" 4"color="#0000CC">Composants</font></td>
<input type="hidden" name="ide" id="ide">
<td><textarea type="text" id="composant" name="composant" cols="40" rows="10" ></textarea></td>
</tr>
<div align="center">
<tr align="center">
<td><input type = "submit" value= "valider" ></td>
</tr>
</div>
</div>
</table>
</FORM>
test(fenêtre popup)
<HTML>
<HEAD>
<TITLE>Popup de choix</TITLE>
<SCRIPT language="javascript">
function Reporter(l) {
window.opener.document.getElementById('composant').value += document.getElementById('liste').options[document.getElementById('liste').selectedIndex].text;
window.opener.document.getElementById('ide').value =document.getElementById('liste').options[document.getElementById('liste').selectedIndex].value;
}
</SCRIPT>
</HEAD>
<CENTER><BR><BR>
<FONT SIZE="2" COLOR="navy" face=arial>
Faites votre choix dans cette liste. </BR>
<FORM>
<SELECT name="liste" id="liste" onChange="Reporter(this)">
<tr align="left">
<td><font size="4" color="#0000CC">Composants</font></td>
<td>
<?php
//connection au serveur:
$connect = mysql_connect( '127.0.0.1', 'root', '' );
//sélection de la base de données:
mysql_select_db('test',$connect) ;
$sql = "SELECT * FROM composant_produit order by libelle";
$query = mysql_query($sql);
while($donnees = mysql_fetch_object($query))
{
echo "<option value='".$donnees->id."'>".$donnees->libelle."</option>";
}
?>
</td>
</tr>
</select>
</FORM>
</FONT>
</CENTER>
</BODY></HTML>
form.php
<?php
//recupération des composants
$ide= $_POST['ide'];
echo $ide;
?>
Merci d'avance pour la lumière