Bonjour,
Je te lance peut être une piste.
Pour interargir avec ajax et une base de données j'utilise souvent ceci :
Tutoriel Ajax et XMLHttpRequest .
J'utilise en général un fichier php et un fichier js. Le fichier js récupère ce qui est affiché par le fichier php (grâce à des echo) qui éxécute une requête.
Je vais t'aider d'un petit exemple qui me permet de savoir si un utilisateur met un login déjà existant.
Fichier js:
Code:
/* valide le login */
function doValidateLogin()
{
// je récupère le champs login
var o=document.getElementById("login");
/*
affiche dans ma page une icone de type loading.
*/
document.getElementById( o.id + '_info').innerHTML='<img src="images/loading.gif" border="0" />';
/*Objet http permettant "d'éxécuter" la page php */
var http=null;
try
{
http = new XMLHttpRequest();
} catch(e)
{
try { http = new ActiveXObject("Msxml2.XMLHTTP"); }
catch (e2)
{
try { http = new ActiveXObject("Microsoft.XMLHTTP"); }
catch (e) {}
}
}
http.onreadystatechange = function()
{
if(http.readyState == 4)
{
if(http.status == 200)
{
// la page php a été exécuté correctement
// la page a affiché true c'est à dire un login existe déjà
if(http.responseText=='true') // récupération de l'affichage grâce à http
{
doError(o,"Ce login existe déjà veuillez en trouver un autre");
loginisgood=false;
}
// la page a affiché false
else
{
doSuccess(o);
loginisgood=true;
}
}
}
};
// on spécifie la page à exécuter en passant en get le login entré par l'utilisateur
http.open("GET", "verifLogin.php?login="+o.value, true);
http.send(null);
}
Le fichier verifLogin.php appellé par le js.
Code:
require('modeles/m_adhesion.php');
/* Exécute une fonction sql du type SELECT * FROM login ;
La fonction getloginAdherents se trouve dans modeles/m_adhesion.php
*/
$logins_user=getloginAdherents();
$present='false';
foreach($logins_user as $login)
{
if($_GET['login']==$login['adh_login'])
$present='true';
}
Bdd::fermer();
// affiche false ou true
echo $present;
Tu dois pouvoir récupérer grâce un select du type :
SELECT * FROM ma_table WHERE id_client=le_code_client_rentré. Ce que tu récupère de cette relation tu l'affiches dans le fichier php par des echos.
Ces echos seront récupérés par le fichier js avec l'objet http. Pour afficher dans tes champs (le nom du client, le prénom du client, son adresse) utilise
innerHTML.
Par exemple dans ton formulaire php:
Ton champs textfield nom du client:
<input name="nom" id="nom_client" type="text"/>
Dans le fichier javascript
:
document.getElementById( 'nom_client').innerHTML='chaine de caractère affichée par le fichier php executant la requete sql';
C'est une réponse un peu tardive mais peut être que ça pourra t'aider ou aider quelqu'un d'autre. Peut-être que ma réponse n'est pas très claire j'en suis désolée...
