par
rapha_d » 18 août 2019, 18:43
Bonjour,
Voici mon problème, j'ai hésité dans quelle section l'exposé. PHP ou peut etre JS
J'ai une variable qui recupère des infos dans ma base, je souhaite que celle ci apparaisse au survol de ma souris sur une image
voici mon code :
Code : Tout sélectionner
<div class="meteo">
<?php
$commentaire ="";
$newcommentaire = "";
$reponse = $connexion->query('SELECT * FROM meteo');
$valmeteo = $reponse -> fetch();
$temps = "images/meteo/".($valmeteo['nomicone']).".png";
$commentaire = $valmeteo['txtmeteo'];
$newcommentaire = wordwrap($commentaire,60,"<br />",false);
$commentaire = "Effectifs : ".($valmeteo['nbdispo'])." sur ".($valmeteo['nbtotal'])."<br />".($newcommentaire);
$_SESSION['meteo'] = "../images/meteo/".($valmeteo['nomicone']).".png";
?>
<a href="#" onMouseOver="displayDivInfo(event,'<?php echo($commentaire); ?>');" onMouseOut="displayDivInfo()">
Météo du jour : <img src=<?php echo($temps); ?> alt="Météo" /></a>
</div>
jusque là pas de problème tout fonctionne bien
le JS correspondant
Code : Tout sélectionner
function displayDivInfo(evt,text){
if(!document.getElementById('divInfo')){
var divInfo = document.createElement('div');
divInfo.id = 'divInfo';
divInfo.style.position = 'absolute';
document.body.appendChild(divInfo);
}
var el=document.getElementById('divInfo')
if(text){
el.textContent=text;
el.style.display='block'
evt.currentTarget.onmousemove=function(evt){
var el=document.getElementById('divInfo')
var dde=document.body.scrollTop ? document.body : document.documentElement;
evt =(!evt) ? window.event : evt;
var XX =evt.clientX + dde.scrollLeft;
var YY =evt.clientY + dde.scrollTop;
el.style.top=YY-15+'px'
el.style.left=XX+15+'px'
}
}
else{
el.onmousemove = '';
el.style.display='none'
}
}
Tout fonctionne cela s'affiche lors du passage de la souris, mais le problème c est que dans mon texte il ne prends pas en compte les retours à la ligne. J'ai essayé avec des <br /> des "\r\n" enfin plein de trucs rien à faire.
Si qq a une idée
Merci
Bonjour,
Voici mon problème, j'ai hésité dans quelle section l'exposé. PHP ou peut etre JS
J'ai une variable qui recupère des infos dans ma base, je souhaite que celle ci apparaisse au survol de ma souris sur une image
voici mon code :
[code]
<div class="meteo">
<?php
$commentaire ="";
$newcommentaire = "";
$reponse = $connexion->query('SELECT * FROM meteo');
$valmeteo = $reponse -> fetch();
$temps = "images/meteo/".($valmeteo['nomicone']).".png";
$commentaire = $valmeteo['txtmeteo'];
$newcommentaire = wordwrap($commentaire,60,"<br />",false);
$commentaire = "Effectifs : ".($valmeteo['nbdispo'])." sur ".($valmeteo['nbtotal'])."<br />".($newcommentaire);
$_SESSION['meteo'] = "../images/meteo/".($valmeteo['nomicone']).".png";
?>
<a href="#" onMouseOver="displayDivInfo(event,'<?php echo($commentaire); ?>');" onMouseOut="displayDivInfo()">
Météo du jour : <img src=<?php echo($temps); ?> alt="Météo" /></a>
</div>
[/code]
jusque là pas de problème tout fonctionne bien
le JS correspondant
[code]
function displayDivInfo(evt,text){
if(!document.getElementById('divInfo')){
var divInfo = document.createElement('div');
divInfo.id = 'divInfo';
divInfo.style.position = 'absolute';
document.body.appendChild(divInfo);
}
var el=document.getElementById('divInfo')
if(text){
el.textContent=text;
el.style.display='block'
evt.currentTarget.onmousemove=function(evt){
var el=document.getElementById('divInfo')
var dde=document.body.scrollTop ? document.body : document.documentElement;
evt =(!evt) ? window.event : evt;
var XX =evt.clientX + dde.scrollLeft;
var YY =evt.clientY + dde.scrollTop;
el.style.top=YY-15+'px'
el.style.left=XX+15+'px'
}
}
else{
el.onmousemove = '';
el.style.display='none'
}
}
[/code]
Tout fonctionne cela s'affiche lors du passage de la souris, mais le problème c est que dans mon texte il ne prends pas en compte les retours à la ligne. J'ai essayé avec des <br /> des "\r\n" enfin plein de trucs rien à faire.
Si qq a une idée
Merci