begin process at 2012 05 29 14:21:15
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Javascript

 > 

Archives

 > 

AU SECOURS !!!

 > 

je ne comprend pas pk ça marche pas :'(


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

je ne comprend pas pk ça marche pas :'(

samedi 27 mars 2004 à 11:04:04 | je ne comprend pas pk ça marche pas :'(

dinous

Bonjour,
j'ai ça :

<?
$connexion = mysql_pconnect(...); //connexion
mysql_select_db(..., $connexion);
$mareq = 'SELECT count(distinct libelletype), codetype,libelletype, dosehomologuee, produits.codeproduit, produit FROM `produits` , `typeproduit` WHERE produits.codetypeproduit = typeproduit.codetype GROUP BY codetype
ORDER BY typeproduit.libelletype, produits.codeproduit';
$curs = mysql_query($mareq, $connexion);
echo "<script type='text/javascript'>";
$prod = "";

while($row=mysql_fetch_assoc($curs))
{
$tab = "";
echo "var"." ".$row["libelletype"]."= new Array(";
$res = mysql_query("select * from produits where CodeTypeProduit=".$row["codetype"]);
while($row2=mysql_fetch_assoc($res))
{
$tab .= "\"".$row2["Produit"]."\", ";
}
$tab = substr($tab,0,strlen($tab)-2);
echo $tab.");";
}
echo /*"function test(){alert(Oïdium[1])}*/"</script>";
?>
<script type='text/javascript'>
function InitializeMainCategory(currentForm) {
for (var i=1; i < Oïdium.length; i++) {alert(i);
eval(currentForm + ".select1.options[i] = new Option('" + Oïdium[i] + "')");
eval(currentForm + ".select1.options[i].value = " + Oïdium[i]);
}
}
</script>
<body onLoad="InitializeMainCategory('document.form1');">
<form name="form1" method="post">
<select name="select1">
</select>
</form>
</body>


et à la sortie ça me donne ça en code source :

<script type='text/javascript'>
var Botnyts= new Array("produit5");
var Engrais= new Array("produit3");
var Insecticide= new Array("produitdeux");
var Mildiou= new Array("produitsix");
var Oïdium= new Array("produitun", "produit4");
</script>
<script type='text/javascript'>
function InitializeMainCategory(currentForm) {
for (var i=0; i < Oïdium.length; i++) {alert(i);
eval(currentForm + ".select1.options[i] = new Option('" + Oïdium[i] + "')");
eval(currentForm + ".select1.options[i].value = " + Oïdium[i]);
}
}
</script>
<body onLoad="InitializeMainCategory('document.form1');">
<form name="form1" method="post">
<select name="select1">
</select>
</form>
</body>

et a l'écran dans ma combo je n'ai que le premier produit et nonpas les deux produits de Oïdium hors Oïdium[0] contient "produitun" et Oïdium[1] contient "produit4"

comment cela se fait il ??
samedi 27 mars 2004 à 11:46:20 | Re : je ne comprend pas pk ça marche pas :'(

bultez

Membre Club
REBonjour
je pense qu'il y a plusieurs erreurs
body onload=fonction
et fonction faite référence à quelquechose qui
vient ensuite dans le body
qui donc ne doit pas encore exister ? ( à vérfifer )
pas compris la syntaxe dans fonction ( eval ... )
pourquoi si "compliqué" ?
....
function InitializeMainCategory()
{ for (var i=0; i < Oïdium.length; i++)
{form1.select1.length++;
form1.select1[i].text=Oïdium[i]; } }
</script>
<body>
<form name="form1" method="post">
<select name="select1">
</select>
</form>
<script type="text/javascript">
InitializeMainCategory();
</script>

une remarque, une question :
pourquoi ne pas générer les option directement
en php, pourquoi passer par des Array et
une function en javascript ?

Cordialement. Bul.
samedi 27 mars 2004 à 12:01:33 | Re : je ne comprend pas pk ça marche pas :'(

dinous

Parce que el php m'oblige a reposter mon formulaire pour avoir les réponses.

et là j'ai réussi à faire ce que je voulais reste plus que la derniere étape

<script type='text/javascript'>
function InitializeMainCategory(currentForm, nomtype) {alert(nomtype);
var i =0;
while (i < nomtype.length) {
eval(currentForm + ".select2.options[i] = new Option('" + nomtype[i] + "')");
eval(currentForm + ".select2.options[i].value = " + i);
i= i +1;
}
}
</script>
<form name="form1">
<select name="select1" onChange="InitializeMainCategory('document.form1', document.form1.select1.options[document.form1.select1.selectedIndex].text)">
<option></option>
<option>Oïdium</option>
</select>
<select name="select2">
</select>
</form>
</body>

le probleme maintenant c'est que je voudrai remplir ma deuxieme combo en fonction de la premiere.
En fait si tu cliques sur Oïdium il faut que sa mette dans le deuxiem combo ce que contitnt le tableau Oïdium c'est aidre les deux valeurs "produitun" et "produit4"
Là ce que j'ai fait ne peux pas marché parce que il prend pas le tableau Oïdium mais al chaine de caractère Oïdium :'(
Comment faire ??
samedi 27 mars 2004 à 12:09:26 | Re : je ne comprend pas pk ça marche pas :'(

dinous

de plus çà :

<script type='text/javascript'>
function InitializeMainCategory(currentForm, nomtype) {alert(nomtype);
var i =0;
if (nomtype = "Oïdium"){
while (i < Oïdium.length) {
eval(currentForm + ".select2.options[i] = new Option('" + Oïdium[i] + "')");
eval(currentForm + ".select2.options[i].value = " + i);
i= i +1;
}
}
}
</script>
<form name="form1">
<select name="select1" onChange="InitializeMainCategory('document.form1', document.form1.select1.options[document.form1.select1.selectedIndex].text)">
<option></option>
<option>Oïdium</option>
</select>
<select name="select2">
</select>
</form>
</body>


ça marche !
dans le ens ou ça rempli bien ma deuxieme combo en fction de ce que je coche dans el premiere le probleme c'ets qu esi j'ai 7 typeproduit ( Oïdium etc ...) je vaius aps faire 7 If ....
donc faudrai essayer d'optimiser ça mais je ne sais pas coment faire :'(
samedi 27 mars 2004 à 12:33:50 | Re : je ne comprend pas pk ça marche pas :'(

bultez

Membre Club
Bonjour
InitializeMainCategory()
{ for (var i=0; i < Oïdium.length; i++)
c'était un exemple pour me simplifier la vie
InitializeMainCategory(tableau)
{ for (var i=0; i < tableau.length; i++)
ça marche, bien sûr
mes 2 questions restent toujours valables

pourquoi eval : à mon avis inutile dans ce cas,
très gourmand en +, parait-il.
pourquoi Array : le fait de rappeller PHP ne change rien,
ça ne justifie rien, à mon sens, je n'ai peut-être
pas tous les éléments en main, mais je ne vois pas
ce qui pourrais justifier cela ?

Cordialement. Bul.
samedi 27 mars 2004 à 12:46:52 | Re : je ne comprend pas pk ça marche pas :'(

dinous

Merci pour ton aide !!
voilà ce aue j'ai maintenant :

<script type='text/javascript'>
function InitializeMainCategory(nomtype) {
for (var i=0; i < nomtype.length; i++){
document.form1.select2.length++;
document.form1.select2[i].text=nomtype[i];
}
}
</script>
<form name="form1">
<select name="select1" onChange="InitializeMainCategory(document.form1.select1.options[document.form1.select1.selectedIndex].text)">
<option></option>
<option>Oïdium</option>
</select>
<select name="select2">
</select>
</form>
</body>
et ça marche bien sauf quand je passe par une variable pour le nom du tableau
Typeproduit est prit en temps que chaine de caractere correspondat au text sélectionné dan sla combo et pas en temps que Tableau
samedi 27 mars 2004 à 15:00:08 | Re : je ne comprend pas pk ça marche pas :'(

bultez

Membre Club
Bonjour
c'est mon niveau d'incompétence là.
comment mémoriser dans les options
d'un select l'adresse d'un tableau ?
pas son nom (en string), mais l'adresse pour le gérer ?
en javascript, je ne sais pas. je suis sûr que c'est
possible, mais je ne sais pas.
je n'ai jamais eu à faire ça comme ça,
donc, je n'ai pas cherché à faire.
j'aurais fait les choses autrement.
Cordialement. Bul.


Cette discussion est classée dans : var, tab, array, row, oïdium


Répondre à ce message

Sujets en rapport avec ce message

Remplir des combo sans relancer le formulaire [ par dinous ] bonjour mon probleme est que j'aimerai remplir dynamisuqment deux combo l'une en fonction de l'autre ( typeproduit, produit).J'ai penser a faire un ta lotto en JS [ par raphk2000 ] Bonjour à tous, Donc voila se que j'ai fait pour generer 6 nombres de 1 à 20 et ensuite pour les triller. Mon prob actuellement c'est que ma boucle x DHTML fonctionne sous Firefox, Safari mais pas IE [ par durand2504 ] Numéroter des noms de variables [ par stefdem ] Bonjour, J'aimerais connaitre l'astuce (si elle existe) pour numéroter des variables. Je m'explique : J'aimerais définir et gérer une grande série d Deux codes IDENTIQUES ne fonctionnent pas pareil [ par zeguizmo ] Salut, Desolé pour la section mais je n'ai rien pigé alors j'ai mis au mieux ... Je commence a devenir chèvre la. J'utilise un code (que je donnerais afficher l'implementation dans un alert [ par attentio ] Bonjour,voila j'ai un script qui me permet de modifier l'ordre d'une listeet j'ai une fonction qui va me permettre de renvoyer cet ordre:ex : si l'ord formulaire dynamique [ par serialgraph ] Un petit probleme avec une liste déroulante contextuelle !!! Je désire créer une liste déroulante qui affiche des informations en fonction d'un choi Problème de listes déroulantes liées / incompatibilité [ par dulcigirl ] Bonjour a tous ! Je suis étudiante et dans le cadre d'un projet, j'ai besoin de de réaliser des listes déroulantes liées.Jusque là, aucun soucis, les Un probleme sur l'heure et date [ par limaseb ] Bonjours, j'ai un souci avec la date car elle me met un jour de plus, ce n'est pas la bonne date pouvez vous m'aider merci peux etre une erreur dans m Trier tableau généré en js [ par way2web ] Bonjour,j'ai créé un script me permettant de générer un tableau html à partir de données stockées dans un array à 2 dimensions. L'affichage est correc


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,950 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales