Listes de valeurs dependantes en PHP + MYSQL
Résolu/Fermé
A voir également:
- Listes de valeurs dependantes en PHP + MYSQL
- Easy php - Télécharger - Divers Web & Internet
- Excel liste de valeurs - Guide
- Liste déroulante en cascade - Guide
- Mysql community server - Télécharger - Bases de données
- Gertrude a préparé la liste des affaires à prendre pour l'excursion. juliette a modifié cette liste en utilisant le mode suivi des modifications proposé par le traitement de texte. - Guide
17 réponses
-------------------------------Code de la BD ---------------------
-- phpMyAdmin SQL Dump
-- version 2.6.1
-- http://www.phpmyadmin.net
--
-- Serveur: localhost
-- Généré le : Lundi 17 Octobre 2005 à 18:46
-- Version du serveur: 4.1.11
-- Version de PHP: 4.3.10-16
--
-- Base de données: `marc`
--
-- --------------------------------------------------------
--
-- Structure de la table `departement`
--
CREATE TABLE `departement` (
`CODEPARTEMENT` int(11) NOT NULL default '0',
`CODEDIRECTION` int(11) NOT NULL default '0',
`LIBELLEDEPARTEMENT` varchar(50) default NULL,
PRIMARY KEY (`CODEPARTEMENT`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Contenu de la table `departement`
--
INSERT INTO `departement` VALUES (6, 3, 'DRH');
INSERT INTO `departement` VALUES (5, 3, 'DAP');
INSERT INTO `departement` VALUES (4, 2, 'CCI');
INSERT INTO `departement` VALUES (3, 2, 'DE');
INSERT INTO `departement` VALUES (2, 2, 'DST');
INSERT INTO `departement` VALUES (1, 2, 'DED');
INSERT INTO `departement` VALUES (7, 3, 'DCB');
INSERT INTO `departement` VALUES (8, 1, 'DM');
INSERT INTO `departement` VALUES (9, 1, 'DECP');
INSERT INTO `departement` VALUES (10, 1, 'DT');
INSERT INTO `departement` VALUES (11, 1, 'DEMSP');
-- --------------------------------------------------------
--
-- Structure de la table `direction`
--
CREATE TABLE `direction` (
`CODEDIRECTION` int(11) NOT NULL default '0',
`LIBELLEDIRECTION` varchar(50) default NULL,
PRIMARY KEY (`CODEDIRECTION`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Contenu de la table `direction`
--
INSERT INTO `direction` VALUES (6, 'DR ABENGOUROU');
INSERT INTO `direction` VALUES (5, 'DR BOUAKE');
INSERT INTO `direction` VALUES (4, 'DR ABIDJAN');
INSERT INTO `direction` VALUES (3, 'DAC');
INSERT INTO `direction` VALUES (2, 'DSI');
INSERT INTO `direction` VALUES (1, 'DO');
INSERT INTO `direction` VALUES (7, 'DR KORHOGO');
-------------------------------Extrait de la classe avec laquelle je fais les acces bd ---------------------
ClsBd.php:
/**********************************************************
**** classe de gestion de l'accès aux données ***
***********************************************************/
class ClsBd
{
var $dbHostName="10.1.50.244"; //Nom du serveur de données
var $dbName="marc"; //Nom de la base de données
var $dbUserName="marc"; //Nom de l'utilisateur légitime de la base de données
var $dbUserPass="marc"; //Mot de passe de l'utilisateur légitime
var $lastConID=0; // Etat de la dernière demande de connexion au serveur
var $lastQueryID=0;//Identificateur de la dernière requête exécutée
var $record=array(); //contient le dernier enregistrement récupéré
var $connectError=1;
var $closeConnectError=2;
var $openDBError=3;
var $selectError=4;
var $IDErreur=null;
//--------------- connexion au serveur de données
// Utilisation
function connect()
{
if ($this->lastConID==0) //La dernière connexion a échoué
{
$this->lastConID=mysql_connect($this->dbHostName, $this->dbUserName,$this->dbUserPass);
if (!$this->lastConID)
{
$this->IDErreur=$this->connectError;
return false;
}
return true;
}
return true;
}
//--------------- ferme la connexion a la base de donnees
// Utilisation
function closeConnection()
{
if (mysql_close($this->lastConID))
{
return true;
}
$this->IDErreur=$this->closeConnectError;
return false;
}
//----------- Active la base de données
// Utilisation
function openDB()
{
if (mysql_select_db($this->dbName,$this->lastConID))
{
return true;
}
$this->IDErreur=$this->openDBError;
$this->closeConnection();
return false;
}
// Utilisation
function executeQuery($strQuery)
{
$ok=false;
if ($this->connect()) //La connexion au serveur de données a reussi
{
if ($this->openDB()) // L'ouverture de la base de données a reussi
{
$this->lastQueryID=mysql_query($strQuery,$this->lastConID);
if ($this->lastQueryID) //La requete s'est execute avec succes
{
$ok=true;
}
}
}
return $ok;
}
//------------- Retourne le nombre d'enregistrements affectes par la derniere requete action
function recordsAffected()
{
return mysql_affected_rows($this->lastConID);
}
//-------------- Retourne le nombre d'enregistrements renvoyés par la dernière requête selection
function recordCount()
{
return mysql_num_rows($this->lastQueryID);
}
//---------------- Retourne l'enregistrement suivant
function nextRecord()
{
$this->record=mysql_fetch_array($this->lastQueryID);
if (!$this->record || !is_array($this->record))
{
return false;
}
else
{
return $this->record;
}
}
function selectRecords($strQuery)
{
if (!$this->executeQuery($strQuery))
{
$this->IDErreur=$this->selectError;
return false;
}
if ($this->recordCount()>0)
{
$returnArray=array();
while($line=$this->nextRecord())
{
$returnArray[]=$line;
}
return $returnArray;
}
return false;
}
}
------------------------------------la feuille html/php-----------------------
<html>
<head>
<title>FICHE DE DEMANDE</title>
<? require_once("ClsBd.php"); ?>
<script language="javascript">
function get_record(critere, form)
{
[code]
var maTable = Array(3);
var i=0;
// Creation d'une instance
$ObjVehicule = new ClsBd();
// initialisation de la requete (probleme car ne sais pas cmt faire passer le js ds le php)
$sql = "select CODEPARTEMENT, LIBELLEDEPARTEMENT from departement where CODEDIRECTION =".critere." order by LIBELLEDEPARTEMENT desc";
// echo $sql;
// mise en exécution
$liste = $ObjVehicule->selectRecords($sql);
if (is_array($liste))
foreach ($liste as $c => $record)
{ var p=new Option($record[1],$record[0]);
form.departement.options[i]=p;
i++;
}
/*maTable["Direction1"] = Array("Departement 1A", "Departement 1B");
maTable["Direction2"] = Array("Departement 2A", "Departement 2B");
maTable["Direction3"] = Array("Departement 3A", "Departement 3B");*/
[/code]
}
</script>
</head>
<body>
<form name="form1" method="post" action="">
<table width="100%" border="0" class="normal">
<tr>
<td colspan="7" align="center"><h4><U>DEMANDE</U></h4></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td colspan="3"> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td width="1%"> </td>
<td width="16%"><strong>Direction</strong></td>
<td width="2%" colspan="2">
<?
// Creation d'une instance
$ObjVehicule = new ClsBd();
// initialisation de la requete
$sql = "select CODEDIRECTION, LIBELLEDIRECTION from direction order by LIBELLEDIRECTION desc";
// mise en exécution
$liste = $ObjVehicule->selectRecords($sql);
// echo $sql;
// exploitation des resultats
?>
<!-- je crois ke cest ici kil faut declencher la fonction javascript -->
<select name="direction" class="inputextst" id="dir" onChange="get_record(this.value, 'form1')" >
<? if (is_array($liste))
foreach ($liste as $c => $record)
echo "<option value=$record[0] >$record[1]</option>";
?>
</select> </td>
<td width="28%" align="right"> </td>
<td width="28%" align="left">
</td>
<td width="5%">
</td>
</tr>
<tr>
<td> </td>
<td><strong>Département</strong></td>
<td colspan="2">
<!-- ICI LA COMPOSITION DE LA LISTE "departement" -->
<!-- Pour l'utilisation de la classe voir les 2 autres select -->
</td>
<td align="right"><strong>Service </strong></td>
<td align="left">
<?
// initialisation de la requete
$sql = "select CODESERVICE, LIBELLESERVICE from service order by LIBELLESERVICE desc";
// mise en exécution
$liste = $ObjVehicule->selectRecords($sql);
// exploitation des resultats
echo "<select name=service class=inputextst>";
if (is_array($liste))
foreach ($liste as $c => $record)
echo "<option value=$record[0] selected>$record[1]</option>";
echo "</select>";
?>
</td>
<td>
</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td width="20%" > </td>
<td colspan="2"> </td>
<td> </td>
<td> </td>
</tr>
</table>
</form>
</body></html>
Voila mon code! je suis perdu entre le PHP et javascript.
Si tu peux regarder et t'inspirer de cela pour m'en dire un peu plus.
La foncton " get_record(critere, form)" est sensée etre en javascript : je sais ke j'ai fait un peu n'importe quoi !!!.
Et c'est cette fonction la ki doit utiliser les fonctions de la classe PHP deja ecrite en PHP pour fournir les resultats
escomptés cad les departements en fonction des directions.
Si tu as des reference javascripts ke je peux consulter en ligne je suis preneur d'adresse
mais il faut ke ce script marche !!!
Merci de m'aider ou de me dire ou je peux trouver de l'aide
-- phpMyAdmin SQL Dump
-- version 2.6.1
-- http://www.phpmyadmin.net
--
-- Serveur: localhost
-- Généré le : Lundi 17 Octobre 2005 à 18:46
-- Version du serveur: 4.1.11
-- Version de PHP: 4.3.10-16
--
-- Base de données: `marc`
--
-- --------------------------------------------------------
--
-- Structure de la table `departement`
--
CREATE TABLE `departement` (
`CODEPARTEMENT` int(11) NOT NULL default '0',
`CODEDIRECTION` int(11) NOT NULL default '0',
`LIBELLEDEPARTEMENT` varchar(50) default NULL,
PRIMARY KEY (`CODEPARTEMENT`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Contenu de la table `departement`
--
INSERT INTO `departement` VALUES (6, 3, 'DRH');
INSERT INTO `departement` VALUES (5, 3, 'DAP');
INSERT INTO `departement` VALUES (4, 2, 'CCI');
INSERT INTO `departement` VALUES (3, 2, 'DE');
INSERT INTO `departement` VALUES (2, 2, 'DST');
INSERT INTO `departement` VALUES (1, 2, 'DED');
INSERT INTO `departement` VALUES (7, 3, 'DCB');
INSERT INTO `departement` VALUES (8, 1, 'DM');
INSERT INTO `departement` VALUES (9, 1, 'DECP');
INSERT INTO `departement` VALUES (10, 1, 'DT');
INSERT INTO `departement` VALUES (11, 1, 'DEMSP');
-- --------------------------------------------------------
--
-- Structure de la table `direction`
--
CREATE TABLE `direction` (
`CODEDIRECTION` int(11) NOT NULL default '0',
`LIBELLEDIRECTION` varchar(50) default NULL,
PRIMARY KEY (`CODEDIRECTION`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- Contenu de la table `direction`
--
INSERT INTO `direction` VALUES (6, 'DR ABENGOUROU');
INSERT INTO `direction` VALUES (5, 'DR BOUAKE');
INSERT INTO `direction` VALUES (4, 'DR ABIDJAN');
INSERT INTO `direction` VALUES (3, 'DAC');
INSERT INTO `direction` VALUES (2, 'DSI');
INSERT INTO `direction` VALUES (1, 'DO');
INSERT INTO `direction` VALUES (7, 'DR KORHOGO');
-------------------------------Extrait de la classe avec laquelle je fais les acces bd ---------------------
ClsBd.php:
/**********************************************************
**** classe de gestion de l'accès aux données ***
***********************************************************/
class ClsBd
{
var $dbHostName="10.1.50.244"; //Nom du serveur de données
var $dbName="marc"; //Nom de la base de données
var $dbUserName="marc"; //Nom de l'utilisateur légitime de la base de données
var $dbUserPass="marc"; //Mot de passe de l'utilisateur légitime
var $lastConID=0; // Etat de la dernière demande de connexion au serveur
var $lastQueryID=0;//Identificateur de la dernière requête exécutée
var $record=array(); //contient le dernier enregistrement récupéré
var $connectError=1;
var $closeConnectError=2;
var $openDBError=3;
var $selectError=4;
var $IDErreur=null;
//--------------- connexion au serveur de données
// Utilisation
function connect()
{
if ($this->lastConID==0) //La dernière connexion a échoué
{
$this->lastConID=mysql_connect($this->dbHostName, $this->dbUserName,$this->dbUserPass);
if (!$this->lastConID)
{
$this->IDErreur=$this->connectError;
return false;
}
return true;
}
return true;
}
//--------------- ferme la connexion a la base de donnees
// Utilisation
function closeConnection()
{
if (mysql_close($this->lastConID))
{
return true;
}
$this->IDErreur=$this->closeConnectError;
return false;
}
//----------- Active la base de données
// Utilisation
function openDB()
{
if (mysql_select_db($this->dbName,$this->lastConID))
{
return true;
}
$this->IDErreur=$this->openDBError;
$this->closeConnection();
return false;
}
// Utilisation
function executeQuery($strQuery)
{
$ok=false;
if ($this->connect()) //La connexion au serveur de données a reussi
{
if ($this->openDB()) // L'ouverture de la base de données a reussi
{
$this->lastQueryID=mysql_query($strQuery,$this->lastConID);
if ($this->lastQueryID) //La requete s'est execute avec succes
{
$ok=true;
}
}
}
return $ok;
}
//------------- Retourne le nombre d'enregistrements affectes par la derniere requete action
function recordsAffected()
{
return mysql_affected_rows($this->lastConID);
}
//-------------- Retourne le nombre d'enregistrements renvoyés par la dernière requête selection
function recordCount()
{
return mysql_num_rows($this->lastQueryID);
}
//---------------- Retourne l'enregistrement suivant
function nextRecord()
{
$this->record=mysql_fetch_array($this->lastQueryID);
if (!$this->record || !is_array($this->record))
{
return false;
}
else
{
return $this->record;
}
}
function selectRecords($strQuery)
{
if (!$this->executeQuery($strQuery))
{
$this->IDErreur=$this->selectError;
return false;
}
if ($this->recordCount()>0)
{
$returnArray=array();
while($line=$this->nextRecord())
{
$returnArray[]=$line;
}
return $returnArray;
}
return false;
}
}
------------------------------------la feuille html/php-----------------------
<html>
<head>
<title>FICHE DE DEMANDE</title>
<? require_once("ClsBd.php"); ?>
<script language="javascript">
function get_record(critere, form)
{
[code]
var maTable = Array(3);
var i=0;
// Creation d'une instance
$ObjVehicule = new ClsBd();
// initialisation de la requete (probleme car ne sais pas cmt faire passer le js ds le php)
$sql = "select CODEPARTEMENT, LIBELLEDEPARTEMENT from departement where CODEDIRECTION =".critere." order by LIBELLEDEPARTEMENT desc";
// echo $sql;
// mise en exécution
$liste = $ObjVehicule->selectRecords($sql);
if (is_array($liste))
foreach ($liste as $c => $record)
{ var p=new Option($record[1],$record[0]);
form.departement.options[i]=p;
i++;
}
/*maTable["Direction1"] = Array("Departement 1A", "Departement 1B");
maTable["Direction2"] = Array("Departement 2A", "Departement 2B");
maTable["Direction3"] = Array("Departement 3A", "Departement 3B");*/
[/code]
}
</script>
</head>
<body>
<form name="form1" method="post" action="">
<table width="100%" border="0" class="normal">
<tr>
<td colspan="7" align="center"><h4><U>DEMANDE</U></h4></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td colspan="3"> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td width="1%"> </td>
<td width="16%"><strong>Direction</strong></td>
<td width="2%" colspan="2">
<?
// Creation d'une instance
$ObjVehicule = new ClsBd();
// initialisation de la requete
$sql = "select CODEDIRECTION, LIBELLEDIRECTION from direction order by LIBELLEDIRECTION desc";
// mise en exécution
$liste = $ObjVehicule->selectRecords($sql);
// echo $sql;
// exploitation des resultats
?>
<!-- je crois ke cest ici kil faut declencher la fonction javascript -->
<select name="direction" class="inputextst" id="dir" onChange="get_record(this.value, 'form1')" >
<? if (is_array($liste))
foreach ($liste as $c => $record)
echo "<option value=$record[0] >$record[1]</option>";
?>
</select> </td>
<td width="28%" align="right"> </td>
<td width="28%" align="left">
</td>
<td width="5%">
</td>
</tr>
<tr>
<td> </td>
<td><strong>Département</strong></td>
<td colspan="2">
<!-- ICI LA COMPOSITION DE LA LISTE "departement" -->
<!-- Pour l'utilisation de la classe voir les 2 autres select -->
</td>
<td align="right"><strong>Service </strong></td>
<td align="left">
<?
// initialisation de la requete
$sql = "select CODESERVICE, LIBELLESERVICE from service order by LIBELLESERVICE desc";
// mise en exécution
$liste = $ObjVehicule->selectRecords($sql);
// exploitation des resultats
echo "<select name=service class=inputextst>";
if (is_array($liste))
foreach ($liste as $c => $record)
echo "<option value=$record[0] selected>$record[1]</option>";
echo "</select>";
?>
</td>
<td>
</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td width="20%" > </td>
<td colspan="2"> </td>
<td> </td>
<td> </td>
</tr>
</table>
</form>
</body></html>
Voila mon code! je suis perdu entre le PHP et javascript.
Si tu peux regarder et t'inspirer de cela pour m'en dire un peu plus.
La foncton " get_record(critere, form)" est sensée etre en javascript : je sais ke j'ai fait un peu n'importe quoi !!!.
Et c'est cette fonction la ki doit utiliser les fonctions de la classe PHP deja ecrite en PHP pour fournir les resultats
escomptés cad les departements en fonction des directions.
Si tu as des reference javascripts ke je peux consulter en ligne je suis preneur d'adresse
mais il faut ke ce script marche !!!
Merci de m'aider ou de me dire ou je peux trouver de l'aide
Utilisateur anonyme
13 oct. 2005 à 21:23
13 oct. 2005 à 21:23
pourquoi ne pas mettre
$reponse = mysql_query("SELECT * FROM nom_table where service='direction"); et tu rajoute un champdans ta bdd, par exemple, service
$reponse = mysql_query("SELECT * FROM nom_table where service='direction"); et tu rajoute un champdans ta bdd, par exemple, service
Le champ ds la BD est deja prevu. Mais le PB c'est ke "direction" doit etre la valeur du controle nomme direction sur la feuille.
j'ai deux controles:
le premier
<select name="direction">
-----
</select>
et le second
<select name="ddepartement">
-----
</select>
et il faut ke chake fois ke je change la valeur de direction, celle de departement suive.
Tu vois le truc ?
N'hesiste pas si ta d'autres idees
$reponse = mysql_query("SELECT * FROM nom_table where service='direction");
j'ai deux controles:
le premier
<select name="direction">
-----
</select>
et le second
<select name="ddepartement">
-----
</select>
et il faut ke chake fois ke je change la valeur de direction, celle de departement suive.
Tu vois le truc ?
N'hesiste pas si ta d'autres idees
$reponse = mysql_query("SELECT * FROM nom_table where service='direction");
Zep3k!GnO
Messages postés
2025
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
18 novembre 2015
200
14 oct. 2005 à 10:38
14 oct. 2005 à 10:38
oula j'ai un peu de mal a tout capter mais, tu peux pas faire ça en prenant par exemple :
dir=document.nomForm.direction.value;
puis tu mets ca dans l'uRL
document.location.href="http://www.tonsite.com/switch.php?dir="+dir;
(ca sur un Onchange comme tu l'as dits biensur ...)
et dans le switch.php c'est ta page dans laquelle tu es (celle qui contient les 2 select ) ,tu récup' la variable dir et du coup tu affiches dans le departement en fonction de la valeur que t'as dans $dir..
genre: $reponse = mysql_query("SELECT * FROM nom_table where service='$dir' ");
Je sais pas si j'ai tout saisie, mais j'espère que ca te fillera un coup de main ..
Zep3k!GnO
-->hi i hi o on va pa sau boulot :P
dir=document.nomForm.direction.value;
puis tu mets ca dans l'uRL
document.location.href="http://www.tonsite.com/switch.php?dir="+dir;
(ca sur un Onchange comme tu l'as dits biensur ...)
et dans le switch.php c'est ta page dans laquelle tu es (celle qui contient les 2 select ) ,tu récup' la variable dir et du coup tu affiches dans le departement en fonction de la valeur que t'as dans $dir..
genre: $reponse = mysql_query("SELECT * FROM nom_table where service='$dir' ");
Je sais pas si j'ai tout saisie, mais j'espère que ca te fillera un coup de main ..
Zep3k!GnO
-->hi i hi o on va pa sau boulot :P
wiwimagique
Messages postés
481
Date d'inscription
mardi 21 janvier 2003
Statut
Membre
Dernière intervention
20 avril 2006
108
14 oct. 2005 à 11:11
14 oct. 2005 à 11:11
Il faut faire ça en javascript principalement.
Le javascript doit être lui généré par le PHP.
tu dois créer une table en javascript come suit grâce à php et aux résultats de ta requête :
[code]
var maTable = Array(3);
maTable["Direction1"] = Array("Departement 1A", "Departement 1B");
maTable["Direction2"] = Array("Departement 2A", "Departement 2B");
maTable["Direction3"] = Array("Departement 3A", "Departement 3B");
[/code]
ensuite, fait une fonction qui charge la partie de la table qui t'intéresses dans la liste de Département. tu déclenches la fonction sur un onchange par exemple.
Voilà, j'espère avoir été suffisamment clair :)
Le javascript doit être lui généré par le PHP.
tu dois créer une table en javascript come suit grâce à php et aux résultats de ta requête :
[code]
var maTable = Array(3);
maTable["Direction1"] = Array("Departement 1A", "Departement 1B");
maTable["Direction2"] = Array("Departement 2A", "Departement 2B");
maTable["Direction3"] = Array("Departement 3A", "Departement 3B");
[/code]
ensuite, fait une fonction qui charge la partie de la table qui t'intéresses dans la liste de Département. tu déclenches la fonction sur un onchange par exemple.
Voilà, j'espère avoir été suffisamment clair :)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mais vois tu c'est combiner le code PHP et Javascrit qui me pose probleme. Surtout quand les structures deviennent complikées.
exemple tableau, etc
Comment générer le code Js a partir de PHP ?
Dans tous les cas e tente le coup fort de tes suggestion et te fais le CR
Merci pour le coup de pouce
exemple tableau, etc
Comment générer le code Js a partir de PHP ?
Dans tous les cas e tente le coup fort de tes suggestion et te fais le CR
Merci pour le coup de pouce
wiwimagique
Messages postés
481
Date d'inscription
mardi 21 janvier 2003
Statut
Membre
Dernière intervention
20 avril 2006
108
14 oct. 2005 à 12:18
14 oct. 2005 à 12:18
le js n'est pas différent du html dans ce sens ...
wiwimagique
Messages postés
481
Date d'inscription
mardi 21 janvier 2003
Statut
Membre
Dernière intervention
20 avril 2006
108
14 oct. 2005 à 13:56
14 oct. 2005 à 13:56
Si t'as un problème, pose ton code ici (n'oublie pas de le mettre entre les balise code), j'essaierais de le corriger.
Merci de m'aider ou de me dire ou je peux trouver de l'aide. Voir mon code ci-dessus
Je cherche un document montrant comment on peut allier PHP et Javascript.
En particulier un code Javascript ou l'on a fait appel à des fonctions écrites en PHP
Merci les gars de votre coopération
Je cherche un document montrant comment on peut allier PHP et Javascript.
En particulier un code Javascript ou l'on a fait appel à des fonctions écrites en PHP
Merci les gars de votre coopération
epsilon17
Messages postés
83
Date d'inscription
samedi 19 mars 2005
Statut
Membre
Dernière intervention
8 avril 2013
55
18 oct. 2005 à 11:04
18 oct. 2005 à 11:04
Php et javascript se completent mais ne peuvent pas "s'appeler" l'un l'autre!
car :
1)php s'éxecute sur le serveur avant l'envoi de la page au client :
il peut donc générer du code javascript sur condition avant d'envoyer la page mais ne peut pas accéder au variables javascript!
2)javascript s'execute sur le poste client : impossible d'executer du php à partir de javascript ce qui est apparement ton objectif :
lorsque tu selectionne la liste déroulante (select) tu veut que cela change le contenu de l'autre liste. Pour cela plusieurs solutions qui dépendent entre autre des navigateurs sur lesquels tu veut l'executer!
si tu est exclusivement en Internet Explorer alors tu peux utiliser :
innerhtml :
(edit maj meilleur lien)
http://fr.selfhtml.org/javascript/objets/all.htm#inner_html
ou/et
Xmlhttprequest :
http://www.toutjavascript.com/savoir/xmlhttprequest.php3#section_01
quel sont les navigateurs ciblés?
car :
1)php s'éxecute sur le serveur avant l'envoi de la page au client :
il peut donc générer du code javascript sur condition avant d'envoyer la page mais ne peut pas accéder au variables javascript!
2)javascript s'execute sur le poste client : impossible d'executer du php à partir de javascript ce qui est apparement ton objectif :
lorsque tu selectionne la liste déroulante (select) tu veut que cela change le contenu de l'autre liste. Pour cela plusieurs solutions qui dépendent entre autre des navigateurs sur lesquels tu veut l'executer!
si tu est exclusivement en Internet Explorer alors tu peux utiliser :
innerhtml :
(edit maj meilleur lien)
http://fr.selfhtml.org/javascript/objets/all.htm#inner_html
ou/et
Xmlhttprequest :
http://www.toutjavascript.com/savoir/xmlhttprequest.php3#section_01
quel sont les navigateurs ciblés?
Tu as bien compris mon problème en effet
Ok je vais regarder les pages et je dirai si j'avance
Merci pr tt
Ok je vais regarder les pages et je dirai si j'avance
Merci pr tt
epsilon17
Messages postés
83
Date d'inscription
samedi 19 mars 2005
Statut
Membre
Dernière intervention
8 avril 2013
55
18 oct. 2005 à 14:52
18 oct. 2005 à 14:52
L'exemple suivant illustre exactement ce que tu veux faire :
http://www.toutjavascript.com/savoir/xmlhttprequest.php3#section_05
Avec xmlhttprequest on peux faire tout un tas de truc qu'on ne pouvait pas faire avant sans recharger toute la page!
On obtient alors des interfaces beaucoup plus intéractives et rapides à répondre (cf gmail qui utilise cette techno à fond)
attention cependant : compatible IE et firefox seulement!
http://www.toutjavascript.com/savoir/xmlhttprequest.php3#section_05
Avec xmlhttprequest on peux faire tout un tas de truc qu'on ne pouvait pas faire avant sans recharger toute la page!
On obtient alors des interfaces beaucoup plus intéractives et rapides à répondre (cf gmail qui utilise cette techno à fond)
attention cependant : compatible IE et firefox seulement!
AH !!!!
Merci bcp. Je sens que c'est très intéressant !
Meme sil est compatible IE slmt, je le prendrai !
Salut et merci encore
Je te dirai qd j'aurai resolu mon PB
Merci bcp. Je sens que c'est très intéressant !
Meme sil est compatible IE slmt, je le prendrai !
Salut et merci encore
Je te dirai qd j'aurai resolu mon PB
Salut !
J'ai pu a adapter le code à mes besoins
Merci bcp pour votre aide
Si vs voulez avoir copie, vs pouvez m'ecrire à
ixtobilly@yahoo.fr
J'ai pu a adapter le code à mes besoins
Merci bcp pour votre aide
Si vs voulez avoir copie, vs pouvez m'ecrire à
ixtobilly@yahoo.fr
wiwimagique
Messages postés
481
Date d'inscription
mardi 21 janvier 2003
Statut
Membre
Dernière intervention
20 avril 2006
108
18 oct. 2005 à 20:21
18 oct. 2005 à 20:21
ah bah, j'arrive trop tard. Ben tant pis :p ou plutôt tant mieux pour toi :o)
obi1
Messages postés
26
Date d'inscription
vendredi 15 décembre 2006
Statut
Membre
Dernière intervention
18 août 2013
7
29 mai 2007 à 12:43
29 mai 2007 à 12:43
J'ai le meme probleme gars, est ce que tu peux bien me passer le code qui a fonctionner ?
Merci d'avance
Merci d'avance
Lis le fil de discussion depuis le début !
https://www.toutjavascript.com/savoir/xmlhttprequest.php3#section_05
https://www.toutjavascript.com/savoir/xmlhttprequest.php3#section_05