salut a tous, bon voila mon problème.
j'ai une page avec un formulaire, j'ai une liste déroulante, et j'aimerai lorsque je clique sur cette liste, pouvoir pré-remplir mon formulaire.
donc j'ai 3 pages.
une avec mon formulaire -> modif_docu.php
CODE
<select name="document_client"> <option value="" >Choisissez le document voulu</option>';
<?
$date_jour=date("Y-m-d");
$sql_docu='SELECT * FROM DOCUMENT WHERE ID_CLIENT="'.$id_client.'" AND DATE_ECHEANCE <= "'.$date_jour.'"';
$query_docu=mysql_query($sql_docu);
while($info_docu=mysql_fetch_array($query_docu)){
$ID_DOCUMENT=$info_docu[0];
$DATE_DOCUMENT=$info_docu[9]; // A changer si on modifie la facture
$ID_TYPES=$info_docu[12];
$sql_type='SELECT * FROM TYPE WHERE ID_TYPE="'.$ID_TYPES.'"';
$rs_doc_type=mysql_query($sql_type);
$affich_doc_type=mysql_fetch_array($rs_doc_type);
?>
<option value="<?php echo $ID_DOCUMENT ?>" onClick="ajax_docu('<? echo $ID_DOCUMENT; ?>')"><?php echo $affich_doc_type[1]." <|> ".$DATE_DOCUMENT ?></option>
<?php
}
?>
</select>
<div id="id_">
</div>
et après la suite de mon formulaire avec par exemple cette liste déroulante
CODE
<td> <?
//selection type document désiré
echo '<select name="id_type">';
if($check_ID_TYPE!='')
{
$sql_type2= 'SELECT * FROM TYPE WHERE ID_TYPE="'.$check_ID_TYPE.'"';
$rs_type2= mysql_query($sql_type2);
$type2= mysql_fetch_array($rs_type2);
?>
<option value="<?php echo $type2[0]; ?>"><?php echo $type2[1]; ?></option>
<?php
}
else
{
echo '<option value="">Choisissez le type de document</option>';
}
$sql_type= "SELECT * FROM TYPE ORDER BY NOM_TYPE ASC";
$rs_type= mysql_query($sql_type);
if (mysql_num_rows($rs_type)>0) {
while ($type= mysql_fetch_array($rs_type)){
if(@$bouton!="modifier" & $_POST['id_type']==$type['ID_TYPE']){
$select="selected";
}else{
$select="";
}
echo "<option ".$select." value='".$type['ID_TYPE']."'>".$type['NOM_TYPE']."</option>";
}
}
echo "</select>";
?>
</td>
j'ai ma page ajax_docu.php
CODE
<?phpinclude "../config/connexion.php";
$check=$_POST['num_doc'];
$sql_check= 'SELECT * FROM DOCUMENT WHERE ID_DOCUMENT="'.$check.'"';
$rs_check= mysql_query($sql_check);
$check1= mysql_fetch_array($rs_check);
$check_NUM_DOCUMENT=$check1[1];
$check_ID_CLIENT=$check1[2];
$check_PRODUIT_DOCUMENT=$check1[3];
$check_NB_PRODUIT_DOCUMENT=$check1[4];
$check_PU_PRODUIT_DOCUMENT=$check1[5];
$check_ACCOMPTE_DOCUMENT=$check1[6];
$check_REMISE_DOCUMENT=$check1[7];
$check_PORT_DOCUMENT=$check1[8];
$check_PAYE_DOCUMENT=$check1[10];
$check_ID_REMARQUE=$check1[11];
$check_ID_TYPE=$check1[12];
echo $check_ID_TYPE;
$check_ID_REGLEMENT=$check1[13];
$check_DATE_ECHEANCE=$check1[14];
$check_ID_REFERENCE=$check1[15];
$check_SERVICE_DOCUMENT=$check1[16];
$check_PU_SERVICE_DOCUMENT=$check1[17];
$check_NB_SERVICE_DOCUMENT=$check1[18];
$check_COMMENTAIRE_FACTURE=$check1[20];
?>
et ma page ajax.js avec ma fonction
CODE
var xhr = null;
function get_Xhr()
{
if(window.XMLHttpRequest)
{
xhr = new XMLHttpRequest();
}
else if(window.ActiveXOject)
{
try
{
xhr = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(el)
{
xhr = null;
}
}
}
else
{
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest\nVeuillez le mettre à jour");
}
return xhr;
}
function ajax_docu(fam5)
{
// Creation de l'objet XMLHttpRequest
get_Xhr();
xhr.onreadystatechange = function()
{
if(xhr.readyState == 4 && xhr.status == 200)
{
document.getElementById('id_').innerHTML = xhr.responseText;
}
}
xhr.open("POST",'ajax_docu.php',true);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.send("num_doc="+fam5);
}
donc voila, je récupère bien l'ID_DOCUMENT dans la page. mais je n'arrive pas a utiliser les infos en dehors de ma balise <div id="id_"></div>
et si je met tout le reste de mon formulaire entre ces balises div, il y a des bug ( par exemple, des parties du formulaire disparaissent )
avez vous une idée ?