Problème d'insertion javascript dans php

Résolu/Fermé
morhead - 5 juil. 2010 à 12:28
a70m Messages postés 2763 Date d'inscription jeudi 21 mai 2009 Statut Contributeur Dernière intervention 2 février 2014 - 5 juil. 2010 à 19:02
Bonjour,

J'ai un petit soucis (merci IE), afin de mettre en couleur dans un mouseover un lien/news je dois insérer e commande javascript dans du code php.

	echo '<table width="210px" class="news" onMouseOver="this.style.color='red'"; onMouseOut="this.style.color='white'";><tr><td>';
        echo '<a href="toto.urlmarrante.fr">';
		echo  htmlentities(trim($data['titre'])) , '<br />', '</td></tr>';
		echo  '<tr><td>Venez nombreux !<br />';
		echo '</a>';
		echo '</td></tr></table>';


Le soucis quans j'insère comme ci-dessus ma commande javascript j'ai ca :

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /news.php on line 26
La ligne 26 est :
		echo '<table width="210px" class="news" onMouseOver="this.style.color='red'"; onMouseOut="this.style.color='white'";><tr><td>';


Z'avez une idée ? j'ai essayé d'échapper mais pas de résultat...
A voir également:

13 réponses

a70m Messages postés 2763 Date d'inscription jeudi 21 mai 2009 Statut Contributeur Dernière intervention 2 février 2014 217
5 juil. 2010 à 14:15
Ecoute, je viens de faire le test avec ce code :

<a href="commentcamarche.net" OnMouseOver="this.style.color='red';" OnMouseOut="this.style.color='blue';">Lien</a>


Et ça marche ...
Teste ce code dans ta page, et si ça marche, remplace les couleurs et le liens.

Cordialement
2
a70m Messages postés 2763 Date d'inscription jeudi 21 mai 2009 Statut Contributeur Dernière intervention 2 février 2014 217
5 juil. 2010 à 12:56
Salut,

Il me semble qu'il faut que tu mettes le point-virgule de l'instruction JavaScript entre la simple quote et la double quote.

OnMouseOver="this.style.color='red';"


Sinon, fait le en CSS
avec
a {color:white;}
a:hover{color:red;}



Cordialement
0
Le problème que j'ai c'est qu'en CSS ca ne passe pas ^^
J'ai la même erreur en mettant ca :

onMouseOver="this.style.color='red';" onMouseOut="this.style.color='white';"
0
a70m Messages postés 2763 Date d'inscription jeudi 21 mai 2009 Statut Contributeur Dernière intervention 2 février 2014 217
5 juil. 2010 à 13:23
Essaye alors d'enlever tous les echo

Ferme ton PHP avant ton code html et rouvre le avant de fermer ton if par exemple

<?php
if($news=1)
{
?>
Code HTML
<?php
}
?>

Cordialement
0

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

Posez votre question
J'ai plus le contenu du if qui s'affiche quand je fais dans le style que tu m'as dit la...
Rien ne s'affiche.


if ($nb_news == 0) {
	echo 'Aucune news enregistrée.';
}
else {
	// si on a au moins une news, on l'affiche
	while ($data = mysql_fetch_array($req)) {

		
?>

		<table width="210px" class="news"><tr><td>
        <a href="toto.fr" target="_top">
		<?php htmlentities(trim($data['titre']))?><br /></td></tr>
		<tr><td>Venez nombreux !<br />
		</a>
		</td></tr></table>
<?
	}
}
0
a70m Messages postés 2763 Date d'inscription jeudi 21 mai 2009 Statut Contributeur Dernière intervention 2 février 2014 217
5 juil. 2010 à 13:50
Il faut tout de même que tu laisses le echo dans <?php htmlentities(trim($data['titre'])) ?>

Tu auras donc :
<?php echo htmlentities(trim($data['titre']));  ?>


Cordialement
0
Ca marche en effet mais j'ai encore et toujours le même problème d'origine.....

La couleur du texte ne change pas.....
0
a70m Messages postés 2763 Date d'inscription jeudi 21 mai 2009 Statut Contributeur Dernière intervention 2 février 2014 217
5 juil. 2010 à 14:01
Dans ta balise <a> Ajoute l'atribut suivvant : class="lien_news"

Puis, avant ton <table>, ajoute ceci :

<style>
.lien_news a {color:white;}
.lien_news a:hover{color:red;}
</style>


Cordialement
0
C'est ce que j'avais fait au début, mais cela ne fonctionnait pas sur mon site.
Apres avoir fouillé le web , j'ai vu que le a:hover pouvait ne pas fonctionner.
Donc j'ai cherché une autre solution, que j'ai trouvée avec le javascript.

Le code fonctionne partout sauf dans le cas exposé précédemment...
Avec le css ca marche pas...
0
Merci beaucoup , ca marche.
J'avais essayé la même méthode tout à l'heure et ca n'avait pas fonctionné....
Peut être car j'ai gardé l'astuce avec le html non encaspulé dans les balises php comme tu avais préconisé plus haut.

En tout cas merci grandement :)
0
a70m Messages postés 2763 Date d'inscription jeudi 21 mai 2009 Statut Contributeur Dernière intervention 2 février 2014 217
5 juil. 2010 à 14:22
Derien, bonne continuation.

Cordialement,
a70m
0
Pour info histoire que tu vois l'importance du lien en couleur (c'est en premiere page)

www.chamboul-tou.fr
0
a70m Messages postés 2763 Date d'inscription jeudi 21 mai 2009 Statut Contributeur Dernière intervention 2 février 2014 217
5 juil. 2010 à 19:02
Effectivement.

Mais il était sûr qu'il y'ait une solution ;)
"Il n'y a pas de problèmes sans solutions" ...

Cordialement
0