Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Problème avec des variables passées de PHP vers javascript. [ JavaScript Orienté objet (POO) / Divers ] (caf911)

vendredi 25 juillet 2008 à 11:07:04 | Problème avec des variables passées de PHP vers javascript.

caf911

Bonjour à tous,

Le script ci dessous permet de changer de facon aléatoire la couleur d'une DIV lorsque l'on clique dessus.
Les couleurs disponibles se trouvent dans une table MYSQL, que je consulte pour alimenter un tableau javascript "ListeDesCouleurs".

Le problème est le suivant :
   - Dans ma variable javascript "ListeDesCouleurs[numerodecouleur]" je récupére bien le nom de la couleur (donc la partie implémentation de cette variable via PHP fonctionne) mais par contre cela ne change pas la couleur de la DIV .
   
Par contre si j'ajoute la ligne de commande suivante :   var ListeDesCouleurs = new Array ("yellow", "red", "lime", "black", "blue", "darkgreen");  en début de script (cela remplace donc le tableau créé en PHP) cela fonctionne !!!!!!!!

D'ou vient mon problème ????? je cale .........
A l'avance Merci de votre aide..........


La table :

-- Structure de la table `couleur`
--

CREATE TABLE `couleur` (
  `FOND` varchar(20) NOT NULL default '',
  `TEXTE` varchar(20) NOT NULL default '',
  UNIQUE KEY `FOND` (`FOND`),
  KEY `TEXTE` (`TEXTE`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Contenu de la table `couleur`
--

INSERT INTO `couleur` VALUES ('yellow', 'black');
INSERT INTO `couleur` VALUES ('red', 'black');
INSERT INTO `couleur` VALUES ('lime', 'black');
INSERT INTO `couleur` VALUES ('black', 'white');
INSERT INTO `couleur` VALUES ('blue', 'white');
INSERT INTO `couleur` VALUES ('darkgreen', 'white');


Le script :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>

<script type="text/javascript">
function changecouleur(obj)
  {
  var nbcouleurs=ListeDesCouleurs.length;

  numerodecouleur= Math.floor(Math.random() * nbcouleurs-1)+1;
   
  el=document.getElementById(obj);                          
  el.style.backgroundColor=ListeDesCouleurs[numerodecouleur];
  }
</script>
</head>

<body>
<?php
ini_set ('max_execution_time', 0); // Aucune limite d'execution
mysql_connect("localhost", "root", "");
mysql_select_db("gestion du parc");

$couleurs=mysql_query("SELECT fond FROM couleur")   or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
$n=0;
?>


 <!-- ----------  Déclaration du tableau dans javascript et copie des données -----  -->
<script type="text/javascript">
var ListeDesCouleurs = new Array(
<?php
while ($ligne=mysql_fetch_row($couleurs))
   {
   echo "new Array('".$ligne[0]."'),";
   $n++;
   }
?>
new Array(""));
</script>
<!-- ---------------  Déclaration du tableau dans javascript et copie des données -----  -->

<?php
for($x=0; $x<$n; $x++)
    {
  $position=$x * 60;
?>
  <div id="<?php echo $x ?>" style="position:absolute; left:50px;top:<?php echo $position ?>px;height:10px;width:150px; background-color:blue;" onclick="changecouleur(<?php echo $x ?>);"> Couleur bleu</div>
<?php
  }
?>  
</body>
</html>



vendredi 25 juillet 2008 à 11:13:14 | Re : Problème avec des variables passées de PHP vers javascript.

bultez

Membre Club
Bonjour,
et si tu nous mettais la page html résultante créée par le php ?
déjà : on n'a pas ta base de données ! alors deviner ce que cela génère....

                Cordialement            Bul         [mon Site]     [M'écrire]

vendredi 25 juillet 2008 à 11:31:36 | Re : Problème avec des variables passées de PHP vers javascript.

nicomilville

Membre Club
Salut,

Bultez ++

Si la réponse vous convient, pensez : Réponse acceptée !


samedi 26 juillet 2008 à 22:23:15 | Re : Problème avec des variables passées de PHP vers javascript.

caf911

Bonjour,
Désolé c'est la première fois que je poste, ci dessous la page résultante créé par le php sous IE.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>

<script type="text/javascript">
function changecouleur(obj)
  {
//var ListeDesCouleurs = new Array ("yellow", "red", "lime", "black", "blue", "darkgreen");

  var nbcouleurs=ListeDesCouleurs.length;

  numerodecouleur= Math.floor(Math.random() * nbcouleurs-1)+1;
  
  el=document.getElementById(obj);                         
  el.style.backgroundColor=ListeDesCouleurs[numerodecouleur];
  }
</script>
</head>

<body>


 <!-- ----------  Déclaration du tableau dans javascript et copie des données -----  -->
<script type="text/javascript">
var ListeDesCouleurs = new Array(
new Array('black'),new Array('blue'),new Array('darkgreen'),new Array('lime'),new Array('red'),new Array('yellow'),new Array(""));
</script>
<!-- ---------------  Déclaration du tableau dans javascript et copie des données -----  -->

  <div id="0" style="position:absolute; left:50px;top:0px;height:10px;width:150px; background-color:blue;" onclick="changecouleur(0);"> Couleur bleu</div>
  <div id="1" style="position:absolute; left:50px;top:60px;height:10px;width:150px; background-color:blue;" onclick="changecouleur(1);"> Couleur bleu</div>
  <div id="2" style="position:absolute; left:50px;top:120px;height:10px;width:150px; background-color:blue;" onclick="changecouleur(2);"> Couleur bleu</div>
  <div id="3" style="position:absolute; left:50px;top:180px;height:10px;width:150px; background-color:blue;" onclick="changecouleur(3);"> Couleur bleu</div>
  <div id="4" style="position:absolute; left:50px;top:240px;height:10px;width:150px; background-color:blue;" onclick="changecouleur(4);"> Couleur bleu</div>
  <div id="5" style="position:absolute; left:50px;top:300px;height:10px;width:150px; background-color:blue;" onclick="changecouleur(5);"> Couleur bleu</div>
 
</body>
</html>


Merci encore

dimanche 27 juillet 2008 à 08:27:02 | Re : Problème avec des variables passées de PHP vers javascript.

bultez

Membre Club

----------------------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled</title>
</head>

<script type="text/javascript">
function changecouleur(obj)
  {
        var ListeDesCouleurs = new Array ("yellow", "red", "lime", "black", "blue", "darkgreen");
        var nbcouleurs=ListeDesCouleurs.length;
        var numerodecouleur= Math.floor(Math.random() * nbcouleurs-1)+1;
        obj.style.backgroundColor=ListeDesCouleurs[numerodecouleur];
  }
</script>
</head>

<body>


 <!-- ----------  Déclaration du tableau dans javascript et copie des données -----  -->
<script type="text/javascript">
var ListeDesCouleurs = new Array(
new Array('black'),new Array('blue'),new Array('darkgreen'),new Array('lime'),new Array('red'),new Array('yellow'),new Array(""));
</script>
<!-- ---------------  Déclaration du tableau dans javascript et copie des données -----  -->

  <div id="0" style="position:absolute; left:50px;top:0px;height:10px;width:150px; background-color:blue;"
    onclick="changecouleur(this);"> Couleur bleu</div>
  <div id="1" style="position:absolute; left:50px;top:60px;height:10px;width:150px; background-color:blue;"
    onclick="changecouleur(this);"> Couleur bleu</div>
  <div id="2" style="position:absolute; left:50px;top:120px;height:10px;width:150px; background-color:blue;"
    onclick="changecouleur(this);"> Couleur bleu</div>
  <div id="3" style="position:absolute; left:50px;top:180px;height:10px;width:150px; background-color:blue;"
    onclick="changecouleur(this);"> Couleur bleu</div>
  <div id="4" style="position:absolute; left:50px;top:240px;height:10px;width:150px; background-color:blue;"
    onclick="changecouleur(this);"> Couleur bleu</div>
  <div id="5" style="position:absolute; left:50px;top:300px;height:10px;width:150px; background-color:blue;"
    onclick="changecouleur(this);"> Couleur bleu</div>
</body>
</html>
----------------------------------------


il te reste à harmoniser la taille des div IE et FF.

                Cordialement            Bul         [mon Site]     [M'écrire]

lundi 28 juillet 2008 à 08:48:50 | Re : Problème avec des variables passées de PHP vers javascript.

caf911

Réponse acceptée !

Ca y est j'ai trouvé , l'erreur se trouvait dans la déclaration du tableau javascript en PHP j'ai remplacé la partie de code par celui-ci :

<?php
if($ligne=mysql_fetch_row($couleurs)) echo "\"".$ligne[0]."\"";
while ($ligne=mysql_fetch_row($couleurs))
   {
   echo ",\"".$ligne[0]."\"";
   $n++;
   }
?>
);

Merci pour votre aide car c'est en regardant le source que vous m'avez demandé que j'ai été mis sur la voie.




Cette discussion est classé dans : insert, couleur, into, values, listedescouleurs


Répondre à ce message

Sujets en rapport avec ce message

Changer la couleur d'un textfield [ par Blondy ] J'aimerais faire une méthode qui change la couleur d'un textfield. Je sais que nous pouvons changer le texte avec .value mais la couleur, avec .style? changer de couleur la cellule quand la souris vient et part [ par Stephane ] salut a tousvoila je connais pas trop javascript, alors je me sert des sources qu'il y a, mais y a un truc qu'il n'y est pas :Comment peut on changer Changer der couleur un bouton. [ par SoniqExnihilo ] Salut.j'ai fait un bouton bleu et j'aimerai que quand je click dessu il devien rouge par exemple.Voila le code que j'ai ecris mais il produit une erre Couleur d'une cellule d'un tableau html [ par ypothier ] Est-ce que quelqu'un pourrai m'aider. J'ai un tableau HTML bien simple. Mais j'aimerai être capable de modifier la class à laquel il appartient dans u COULEUR DE FOND [ par PatriceVB ] Est-il possible quand on clique sur un lien, de changer la couleur de fond de la page ? Changement de couleur de cellules dans un tableau [ par krevette ] Bonjour tt le mondej'aimerais changer la couleur des cellules d'un tableau (jusque la pas de probleme). Mais ce qu'il y a c'est que je voudrais change couleur du texte d'une cellule ou la couleur du fond d'une cellule d'une table [ par rabdane ] J'aimerais avoir un javascript qui change la couleur du texte d'une cellule ou la couleur du fond d'une cellule d'une table appelé TABLE1.cette table probleme avec couleur scrool I.E [ par Meduse ] Votre texte ICIVotre texte ICIje place ce bout de code entre les balises et dans ma page hTML pour pouvoir collorer la scroll Roll-over spécial [ par Inc0 ] Voila, je voudrai faire un rollo- over assez joli.Lorsque la souris est au dessus du lien ça change de couleur. Ok ça j' arrive (lol), mais maintenant Couleur des separateur de frames... [ par Mirror1661 ] Salut!ça doit etre super simple mais j'y arrive pas... Comment on change la couleur des bordures qui separent les differentes frames?MerciMirror.


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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
Temps d'éxécution de la page : 0,250 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.