OVH Cloud OVH Cloud

overlib

32 réponses
Avatar
gb
Bonjour

En html j'ai ça qui fonctionne :

<a href="javascript:void(0)" onMouseOver="return overlib('<img src=nom.jpg
>',RELX, -150,RELY, -20)" onMouseOut="return nd()"><b>toto</b></a>
(une image s'affiche quand la souris survole le nom toto)

pour le transposer en php, je dois faire ça :

$image=nom.jpg;
$t1 .='<a href="javascript:void(0)" onMouseOver="';
$t1 .="return overlib('<img src=". $image .">'";
$t1 .=',RELX, -160, RELY, -125)" onMouseOut="return nd();">';
$t1 .='toto</a>';

Quand j'utilise une base mysql, est ce possible de remplacer toto par le
nom qui va avec l'image ?

je n'ai rien su trouver ici http://www.bosrup.com/web/overlib/?Documentation
Merci
GB

10 réponses

1 2 3 4
Avatar
ASM
pour le transposer en php, je dois faire ça :

$image=nom.jpg;
$t1 .='<a href="javascript:void(0)" onMouseOver="';
$t1 .="return overlib('<img src=". $image .">'";
$t1 .=',RELX, -160, RELY, -125)" onMouseOut="return nd();">';
$t1 .='toto</a>';

Quand j'utilise une base mysql, est ce possible de remplacer toto par le
nom qui va avec l'image ?


bien sûr !
$t1 .='$nom</a>';

Tu peux même te faire une fonction php pour réutiliser c'bazar où tu veux

function overImage($nom, $image) {
print ('
<a href="#" onclick="return false;"
onMouseOver="return overlib('<img src="$image">',
RELX, -160 , RELY, -125);"
onMouseOut="return nd();">$nom</a>
');
}


blabla vers la bdd
$images[] = array résultant de l'extraction des images et noms
de la base de donnée

foreach($images as $image ==> $lien)
overImage($image, $lien);

--
ASM

Avatar
gb
Merci

Mais ça ne marche pas...
si je mets $nom, ça m'écrit....$nom
(je teste la variable : elle contient bien le nom)

si j'utilise la fonction (l'idéal) ça m'écrit : ',RELX, -160 , RELY, -125);"
onMouseOut="return nd();">$nom (sous forme de lien).

par ailleurs : onclick="return false;" est nécessaire ?

GB

"ASM" a écrit dans le message
de news: 4537bdea$0$5086$
pour le transposer en php, je dois faire ça :

$image=nom.jpg;
$t1 .='<a href="javascript:void(0)" onMouseOver="';
$t1 .="return overlib('<img src=". $image .">'";
$t1 .=',RELX, -160, RELY, -125)" onMouseOut="return nd();">';
$t1 .='toto</a>';

Quand j'utilise une base mysql, est ce possible de remplacer toto par
le


nom qui va avec l'image ?


bien sûr !
$t1 .='$nom</a>';

Tu peux même te faire une fonction php pour réutiliser c'bazar où tu veux

function overImage($nom, $image) {
print ('
<a href="#" onclick="return false;"
onMouseOver="return overlib('<img src="$image">',
RELX, -160 , RELY, -125);"
onMouseOut="return nd();">$nom</a>
');
}


blabla vers la bdd
$images[] = array résultant de l'extraction des images et noms
de la base de donnée

foreach($images as $image ==> $lien)
overImage($image, $lien);

--
ASM



Avatar
ASM
Merci

Mais ça ne marche pas...
si je mets $nom, ça m'écrit....$nom
(je teste la variable : elle contient bien le nom)


bon ... je suis pas fortiche en php, essayer :

function overImage($nom, $image) {
print ('
<a href="#" onclick="return false;"
onMouseOver="return overlib('<img src='.$image.'>',
RELX, -160 , RELY, -125);"
onMouseOut="return nd();">'.$nom.'</a>
');
}


si j'utilise la fonction (l'idéal) ça m'écrit : ',RELX, -160 , RELY, -125);"
onMouseOut="return nd();">$nom (sous forme de lien).


Pas compris pourquoi : ',RELX, -160 , RELY, -125);"

par ailleurs : onclick="return false;" est nécessaire ?


Il me semble que oui, vu comme est bâti le lien maintenant.
C'est pour éviter le clic.

<a href="javascript:void(0)"
équivalent à :
<a href="#" onclick="return false;"

et je préfère la méthode 2.


--
ASM

Avatar
Stéphane Santon
Bonjour,

ASM a couché sur son écran :
$t1 .='$nom</a>';


Pour que $nom soit remplacé par le contenu de la variable, il faut
mettre des doubles guillements :
$t1 .= "$nom</a>";

Avatar
gb
Merci
Ca marche en faisant ça :
$t1 ='<a href="javascript:void(0)" onMouseOver="';
$t1 .="return overlib('<img src=". $photo .">'";
$t1 .=',RELX, -160, RELY, -125)" onMouseOut="return nd();">';
$t1 .= "$nom</b></a>";

malheureusement ça ne marche pas dans une fonction....

GB

"Stéphane Santon" a écrit dans le message de
news:
Bonjour,

ASM a couché sur son écran :
$t1 .='$nom</a>';


Pour que $nom soit remplacé par le contenu de la variable, il faut
mettre des doubles guillements :
$t1 .= "$nom</a>";





Avatar
ASM
Merci
Ca marche en faisant ça :
$t1 ='<a href="javascript:void(0)" onMouseOver="';
$t1 .="return overlib('<img src=". $photo .">'";
$t1 .=',RELX, -160, RELY, -125)" onMouseOut="return nd();">';
$t1 .= "$nom</b></a>";

malheureusement ça ne marche pas dans une fonction....


comment ça : ça ne marche pas dans une fonction ?

d'une part je t'ai donné ma proposition de fonction corrigée
(testée : c'est OK)

d'autre part ceci devrait aussi fonctionner :

function newLien($photo, $nom) {
$t1 ='<a href="javascript:void(0)" onMouseOver="';
$t1 .="return overlib('<img src=". $photo .">'";
$t1 .=',RELX, -160, RELY, -125)" onMouseOut="return nd();">';
$t1 .= "$nom</b></a>";
echo $t1;
}

ou même ceci :

function newLien($image, $lien) {
print("<a href="javascript:void(0)"
onMouseOver="return overlib('<img src="$image">',
RELX, -160, RELY, -125);"
onMouseOut="return nd();">$lien</b></a>");
}


--
ASM

Avatar
ASM
Bonjour,

ASM a couché sur son écran :
$t1 .='$nom</a>';


Pour que $nom soit remplacé par le contenu de la variable, il faut
mettre des doubles guillements :
$t1 .= "$nom</a>";



Et on essaie de faire croire que le php c'est *facile* ?


Avatar
Olivier Miakinen

Pour que $nom soit remplacé par le contenu de la variable, il faut
mettre des doubles guillements :
$t1 .= "$nom</a>";


Et on essaie de faire croire que le php c'est *facile* ?


Qui pourrait prétendre une chose pareille ? C'est comme si on voulait
faire croire que le HTML c'est facile -- ou pire, le JavaScript. Comme
tout langage cela demande un certain effort et une certaine rigueur.

Notons quand même que la différence entre '$nom' et "$nom" en PHP n'est
pas la chose la plus difficile à comprendre. C'est moins compliqué par
exemple que le contexte d'exécution et l'objet activation en JavaScript.


Avatar
ASM
Pour que $nom soit remplacé par le contenu de la variable, il faut
mettre des doubles guillements :
$t1 .= "$nom</a>";
Et on essaie de faire croire que le php c'est *facile* ?



Qui pourrait prétendre une chose pareille ?


D'aucuns et assez nombreux.

C'est comme si on voulait faire croire que le HTML c'est facile


C'est difficile ?

-- ou pire, le JavaScript. Comme
tout langage cela demande un certain effort et une certaine rigueur.


De là à enquiquiner avec des nuances ' ou " ... y a une marge.

Notons quand même que la différence entre '$nom' et "$nom" en PHP n'est
pas la chose la plus difficile à comprendre.


à comprendre ... si on a eu l'explication.
ou si l'énoncée n'a pas été très courte ni seulement survolée.

C'est moins compliqué par
exemple que le contexte d'exécution et l'objet activation en JavaScript.


Et moins compliqué que la(les) manip(s) d'arrays en php.

c'est bien pourquoi on s'étonne de se faire e...der par cette
différenciation ' / ".

M'enfin, piske c'est établi, on va essayer de graver.



Avatar
Stéphane Santon
Bonjour,


ASM a présenté l'énoncé suivant :
Pour que $nom soit remplacé par le contenu de la variable, il faut mettre
des doubles guillements :
$t1 .= "$nom</a>";


Et on essaie de faire croire que le php c'est *facile* ?


Les guillemets simples n'interprètent pas les variables.
Les guillemets doubles interprètent les variables.

Si tu juges ça comme une difficulté, j'espère que tu ne considères ton
activité de programmation que comme du bricolage.
C'est un savoir, et non un savoir-faire, donc par définition ça ne
présente aucune difficulté.

Il faut seulement passer par la phase normale d'apprentissage avant de
prétendre développer dans un langage, et ne pas mettre sur le compte
d'un langage ce qui vient d'une impasse personnelle.

Enfin sinon à part ça, t'as une expérience très intéressante en
JavaScript.


1 2 3 4