Ajuda - Busca - Membros - Calendário
Versão Completa: Inserir Onmouseover No Link E...
Fórum Script Brasil > Programação & Desenvolvimento > PHP
Halfar
Pessoal tenho o seguinte link:

echo "<a href=\"Descricao.php4?ID=".$valor['ID']."\" title=\"$popresumo\">".$valor["Titulo"]. "</a>";


Este link eu fiz com a ajuda do pessoal aqui do forum, e não entendi bem para que servem as várias barras existentes ai no codigo acima. alguém saberia me explicar? E preciso inserir tambem neste link o OnMouseOver = funcao();'.... só que como não etendo o funcionamento destas barras não consigo inserir este codigo OnMouseOver...
Renato Penna
echo "<a href=\"Descricao.php4?ID=".$valor['ID']."\" title=\"$popresumo\" onMouseOver=\"funcao()\">".$valor["Titulo"]. "</a>";

As barras servem para o echo considerar as aspas duplas que você precisa na definição do link. Se você retirá-las vai dar erro porque assim o echo estará sendo terminado e não é isso o que deve acontecer..
Halfar
Bem, agora tentei colocar uma informacao dentro da funcao, mas está dando erro:

O link contendo a funcao que voces inseriram para mim ficou assim:

QUOTE
echo "<a href=\"Descricao.php4?ID=".$valor['ID']."\" title=\"$popresumo\" onMouseOver=\"funcao()\">".$valor["Titulo"]. "</a>";


Só que preciso passar um parametro dentro da funcao, então fiz assim:

QUOTE
echo "<a href=\"Descricao.php4?ID=".$valor['ID']."\" title=\"$popresumo\" onMouseOver=\"funcao($valor['UrlImagem'])\">".$valor["Titulo"]. "</a>";


só que assim dá pau...

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/negocios/public_html/farois/index.php4 on line 85


PS: Quanto as barras, qual é a regra para inserir estas barras, em que momento são inseridas. Analisei o codigo do link acima com as barras, mas não me pareceu muito claro onde as barras são inseridas. Aliás, seguindo a lógica do código, me parece que antes de onMouseOver deveria existir um ."\"
Renato Penna
Tente assim ...
CODE
echo "<a href=\"Descricao.php4?ID=".$valor['ID']."\" title=\"$popresumo\" onMouseOver=\"funcao(".$valor['UrlImagem'].")\">".$valor['Titulo']. "</a>";
Halfar
bom,

erro não deu, mas tambem não funcionou...

não acontece nada quando passo o mouse sobre o link, até coloquei uma caixa de alerta na funcao para ver se exibia algo,
mas realmente nada acontece, e tambem não gera erro algum, como aquele icone amarelo no rodapé da pagina...
Renato Penna
Cara, posta o código da função funcao() para poder analisar e ver como ela funciona juntamente com $valor['UrlImagem'], por favor.
Halfar
É codigo simples:

QUOTE
<script>
var url_imagem;
function funcao(url_imagem){
alert(url_imagem);

}
</script>


por enquanto apenas coloquei o codigo para exibir uma caixa de alerta somente para ver se funciona...
Renato Penna
Halfar, eu faria essa função com PHP por estar passando uma variável PHP como parâmetro. E para mostrar os códigos em JS usaria o echo.
CSML sistemas
Como ficou o código HTML resultante da execução deste seu script PHP?
Halfar
bem, eu havia feito esta funcao inicialmente em php, mas tambem não funcionava...

acho que vou desistindo desta ideia, creio que será ate melhor fazer diferente.

vou colocar um icone no lado do link, ai a pessoa clica no icone e a imagem será exibida.


Com a imagem no lado do link o codigo ficou assim:

QUOTE
<a href="" onMouseOver=ExibeImagens(<? echo $valor["UrlImagem"];?>><img src="imagens/foto.gif"></a>



só que neste caso eu escrevi html puro, e somente no meio do codigo inseri codigo php.

Note que eu não especifiquei nenhuma url porque não quero que seja executada nenhuma, não quero reload na pagina, se eu colocar onClick ao invés de OnMouseOver, mesmo assim dá um reload na pagina. Então deixei OnMouseOver mesmo.

Mas tambem não está funcionando.

O codigo da funcao mudei para php novamente como sugerido:
QUOTE
<?
function ExibeImagens($url_imagem){
echo "teste";
echo $url_imagem;
//"<img src = " . $url_imagem . " border = 0 >";
}
?>
bem, seu quiserem ver o resultado disto acesse o link Negocios.

Note que na relacao de links, somente o primeiro funciona, o resto está com problema, ainda preciso arrumar, mas não é este o problema em tela, note que o primeiro link funciona. Então note que existe um icone no lado esquerdo do link, ao clicar no icone da foto deverá aparecer a imagem no quadro branco a esquerda do link...


fiz algumas alteracoes, agora está dando alguns sinais de funcionamento, apesar de um outro erro que aparece.

O codigo está assim:
QUOTE
$var = "teste";
<a href="" onMouseOver=<?ExibeImagens($var);?>><img src="imagens/foto.gif" border=0></a>



Note que estou utilizando php somente para executar a funcao...



Aqui vai o codigo da funcao:

<?
function ExibeImagens($x){
echo $x;
}
?>




note que estou utilizando codigo php para executar a funcao ExibeImagens. Agora o curioso é que tentei ao invés de php inserir as tags <script> para utilizar o JS, mas já no tempo de projeto aparece erro, fica marcado em amarelo o inicio do link indicando algum erro.

Mas vamos com php então.

Note então que estou utilizando uma imagem, quando o usuário passar o mouse sobre a imagem a funcao ExibeImagens deverá se executada.

O que está ocorrendo é que quando passa o mouse sobre a imagem, a funcão é executada, mas aparece erro informando que teste não está definido...

Nunca vi este erro em php, somente em js...
O que pode estar ocorrendo??

para ver o funcionamento disto tudo acesse negocios


Mudei o programa para que apenas apareca o primeiro link. Passe o mouse sobre o icone da foto, irá aparecer uma mensagem de erro no rodapé da página... dizendo que "teste" não está definido.
CSML sistemas
Camarada, vi várias vezes "</body></html>" no seu código, além de outras "<html><body>"... é correto isso?
blink.gif
Halfar
Na realidade no meu codigo tem apenas um </body> e um </html>.

Voce deve ter visto no "exibir codigo fonte", eu creio que, como meu script contem codigos do google para exibir banners, e outros codigos de outros sites, creio que estes codigos fazem aparecer estes outros bodys....
CSML sistemas
QUOTE(Halfar @ 17/04/2007 - 07:58) *
Na realidade no meu codigo tem apenas um </body> e um </html>.

Voce deve ter visto no "exibir codigo fonte", eu creio que, como meu script contem codigos do google para exibir banners, e outros codigos de outros sites, creio que estes codigos fazem aparecer estes outros bodys....


Já testou o site no Firefox? Tomei um susto!
Esta é uma versão simplificada de nosso conteúdo principal. Para ver a versão completa com maiores informações, formatação e imagens, por favor clique aqui.
Invision Power Board © 2001-2013 Invision Power Services, Inc.