Probleme de syntaxe (enfin j'espere!!)

Résolu
LaTatadu91 Messages postés 968 Date d'inscription jeudi 20 mai 2004 Statut Membre Dernière intervention 26 avril 2013 - 14 janv. 2005 à 11:43
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 - 14 janv. 2005 à 13:47
Salut tout le monde;alors voila je crois que ya un probléme de syntaxe ds mon code qui est censé ecrire les ligne de mon tableau de deux couleurs différentes de maniéres alternatives
voici mon code:

for($i=0;$i<$nbr_prod;$i++){
if($i%2==0){
$couleur="#E6E6E6";
$couleur2="#A9FF8F";}

else {
$couleur="#C0C0C0";
$couleur2="#A9FF8F";}


echo ' <tr bgcolor=',$couleur,' onmouseover="this.style.backgroundColor=',$couleur2,'" onmouseout="this.style.backgroundColor=',$couleur,'">

il ne comprends pas la variable couleur par contre en dur il marche bien!!!!
help please

8 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
14 janv. 2005 à 13:17
Ensuite, pour ce qui concerne le fait que le rollover ne marche pas :-)

Voila :

echo ' <tr bgcolor="',$couleur,'" onmouseover="this.style.backgroundColor=\'',$couleur2,'\'" onmouseout="this.style.backgroundColor=\'',$couleur,'\'">';

Tu as oublie les d'echapper un '

la couleur dans ton this.style.backgroundColor doit etre entre ''
donc : "this.style.blablabla = \'',$couleur,'\'"

Vla.
3
XyWiL Messages postés 8 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 14 janvier 2005
14 janv. 2005 à 11:52
Essaie:



echo "<tr
bgcolor=',$couleur,'
onmouseover="this.style.backgroundColor=',$couleur2,' "
onmouseout="this.style.backgroundColor=',$couleur,'">";
0
LaTatadu91 Messages postés 968 Date d'inscription jeudi 20 mai 2004 Statut Membre Dernière intervention 26 avril 2013 1
14 janv. 2005 à 11:58
merci je viens de test mais ce n'est pas bon :(((
0
cs_bultez Messages postés 13616 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 31
14 janv. 2005 à 12:18
Bonjour,

<TR onmouseover="this.style.backgroundColor='<?echo $couleur2;?>';" onmouseout="this.style.backgroundColor='<?echo $couleur;?>';>" <!--EndFragment-- bgcolor="<?php echo $couleur;?>">?>
<tr bgcolor="<?php echo $couleur;?>"
onmouseover="this.style.backgroundColor='<?php echo $couleur2;?>';"
onmouseout="this.style.backgroundColor='<?php echo $couleur;?>';>"
<?php

peut-être ? enfin, pas loin ...
Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bultez Messages postés 13616 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 31
14 janv. 2005 à 12:23
Bonjour,


«tr bgcolor="«?php echo $couleur;?»"
onmouseover="this.style.backgroundColor='«?php echo $couleur2;?»';"
onmouseout="this.style.backgroundColor='«?php echo $couleur;?»';»"

remplacer « et » par < et >
( sinon pas d'affichage ici )
Cordialement. Bul. ~Site~~[mailto:marcelBultez@tiscali.fr Mail]~
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
14 janv. 2005 à 13:08
Hello,

echo '';
for($i=0;$i<10;$i++){
if($i%2==0){
$couleur=\"#E6E6E6\";
$couleur2=\"#A9FF8F\";}

else {
$couleur=\"#C0C0C0\";
$couleur2=\"#A9FF8F\";}

echo ' ----
';
echo 'blabla, ';

}
echo '
';
0
LaTatadu91 Messages postés 968 Date d'inscription jeudi 20 mai 2004 Statut Membre Dernière intervention 26 avril 2013 1
14 janv. 2005 à 13:37
merci a toi malalam
tjrs la pr me sauver :)))

bon pr eviter d'autres questions cons si qlq'un peut m'aider a trouver une bonne explication des ' et " ce sera bien cool

on en apprend tous les jours!!!
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
14 janv. 2005 à 13:47
De rien :-) J'avais pas vu que c'etait toi en fait lol. Ca avance?

Sinon heu...pas moi, pour l'explication !

Enfin en gros...par convention :
les attributs HTML sont entre " "

Pour ce qui concerne les attributs definis en javascript, c'est entre ' '
simplement parce que, par exemple, sur un onmouseover, tu ouvres ca avec " " donc apres, pour attribuer une valeur a ce que tu veux modifier, tu ne peux pas remettre ca entre " " sinon le client web va croire que tu fermes ton "...
heu...
exemple lol :onmouseover "this.style.backgroundColor "red""
Tu vois bien qu'il y a un probleme...en toute logique, tu ouvres a "this.style... et tu fermes a ="
donc on fait : onmouseover "this.style.backgroundColor 'red'"

Ensuite, ca se complique avec des print ou echo en php...forcement. Eux memes etant en general entre "" ou ''
Quand tu generes du code HTML a la volee, tu as forcement besoin , par moment, de mettre un " ou un ' , mais tu es coince parce que ton echo s'est deja ouvert avec ca! Donc, y a le caractere d'echappement : \
Tu le places avant un quote (" ou ') et ca indique a PHP de l'afficher, pas de l'interpreter, tout simplement.

donc :echo 'onmouseover "this.style.backgroundColor \'red\'"';
ou mais c'est moins bien :echo "onmouseover "this.style.backgroundColor 'red'"";

Tu dois echapper le quote utilise pour contenir ton echo, en fait.

C'est plus clair?
0