onmouseover in php

elilabruja

Nuovo Utente
6 Mar 2011
5
0
0
Ciao ragazzi, non riesco a far funzionare un comando javascript in php....
ho una serie di immagini che al passarci sopra dovrebbe far cambiare il titolo pagina con un'altra immagine (stesse dimensioni ma col titolo dell'immagine su cui stiamo passando il mouse).....ho modificato la pagina con codice PHP per ricavare i dati dal database e da lì non riesco a far funzionare l'effetto onmouseover.....

in pratica il ciclo php richiama l'immagine dal db ($riga['ImgArt'])
e al passarci sopra dovrebbe cambiare l'immagine con id e name "artista" (fuori dal codice php) con il riferimento al db $riga['TitArt'].....

come faccio a implementare nel codice php il mouseover di javascript?THANKS!
 
while ($riga = $result->fetch_array())
{
echo "<a href='artisti/{$riga['InfoArt']}' onmouseover='MM_swapImage('artista','','artisti/tit/{$riga['TitArt']}',1)'
onmouseout='MM_swapImgRestore()' target='blank'><img src='artisti/hp/{$riga['ImgArt']}' vspace='5' hspace='5' border='0'/></a>";
}

chiaramente il onmouseover viene dall'html.....dici che posso semplicemente modificare la riga del codice o devo aggiungere degli script???

grazie....
 
Ho trovato una soluzione che mi permette applicare il mouseover su un'immagine diversa (name=titolo) da quella del link con uno script nel tag HEAD:

<script type="text/javascript">
<!--
function mouseOver()
{
document.titolo.src = "<?php echo "artisti/tit/{$riga['TitArt']}"?>"
}
function mouseOut()
{
document.titolo.src = "img/bg/artipage.jpg"
}
//-->
</script>

e nel BODY il link
...
echo "<a href='artisti/{$riga['InfoArt']}' target='blank'>
<img src='artisti/hp/{$riga['ImgArt']}' vspace='3' hspace='3' border='0' onMouseOver='mouseOver()' onMouseOut='mouseOut()'/></a>";
...

funziona ma non trova l'immagine riferita a $riga['TitArt']...sbaglio qualcosa nella sintassi?
grazie
 
cosa centrano le parentesi grafe????

usando i doppi apici dovrebbe fonionare semplicemente così:
PHP:
echo "<a href='artisti/$riga['InfoArt']' target='blank'>
<img src='artisti/hp/$riga['ImgArt']' vspace='3' hspace='3' border='0' onMouseOver='mouseOver()' onMouseOut='mouseOut()'/></a>";

io comunque concateno sempre per sicurezza, quindi
PHP:
echo "<a href='artisti/".$riga['InfoArt']."' target='blank'>
<img src='artisti/hp/".$riga['ImgArt']."' vspace='3' hspace='3' border='0' onMouseOver='mouseOver()' onMouseOut='mouseOut()'/></a>";
 
Sono molte le forme accettate. Io solitamente tendo ad usare sempre le parentesi graffe a meno che non sia necessario concatenare (ad esempio nel caso l'output provenga dal valore restituito da una funzione). Se usi la concatenazione, comunque, è meglio usare gli apici singoli, perché PHP si aspetta che la stringa non contenga variabili e quindi guadagni in velocità.
 
ah...
grazie delle delucidazioni.
Pensavo che le grafe derivassero da qualche altro linguaggio, perchè non hop mai avuto a che fare con codice scritto così, scusami
 
avevo trovato un esempio on line che usava le parentesi graffe e mi funzionava...cmq grazie a un suggerimento ho risolto modificando il codice così:

echo "<a href=\"artisti/{$riga['InfoArt']}\"
onmouseover=\"MM_swapImage('artista','','artisti/tit/{$riga['TitArt']}',1)\"
onmouseout=\"MM_swapImgRestore()\" target='blank'>
<img src=\"artisti/hp/{$riga['ImgArt']}\" vspace='3' hspace='3' border='0'/></a>";

e l'immagine con nome artista adesso funziona come volevo....
(http://www.artifigurative.info/artisti.php)

gracias chicos...
 

Discussioni simili