Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia pessoal estou com o seguinte problema:
Tenho o seguinte código:
<?php
$arquivo = file("ficheiros/adesivos/imagens/imagem1.txt");
for($i = 0; $i < count($arquivo); $i++){
$asd = ".$arquivo[$i].";
print "
<a href=javascript: void(0)><img src=".$arquivo[$i]." width=148px height=148px name='imagem1'
onclick=\"document.getElementById('imagem_grande').src = 'ficheiros/adesivos/fotos/$i.bmp'\" border=0/></a>";}
?>
Esse codigo pega a imagem do src do js e joga ela grande em ima outra div com tag <img com id=imagem_grande...
Até ai beleza, ta trocando a imagem normalmente, porém precisaria pegar o valor de $i com o click e jogar
em uma outra string mais abaixo, fora desse loop, essa pagina está usando ajax, por isso não posso
simplesmente dar um refresh na pagina, preciso do valor de $i como faço com a imagem, sem refresh e
com javascript, onclick talvez?
Legal, fecharam o meu outro tópico no PHP e nesse ninguêm posta. http://forum.imasters.com.br/public/style_emoticons/default/clap.gif
Entendi William Bruno,
Pesso desculpas,
Não da para pegar o valor de $i fora do loop certo?Errado!
Dá sim, eu pego ele numa div logo abaixo, fora do loop, com aquele id imagem_grande...
Quando click na imagem pequena ela aparece grande na div abaixo porque está assim:
<img src="imagem antiga" id="imagem_grande">
Não sei se estou pegando o valor de $i ou oque, só sei que oque
está no src do javascript esta jogando a imagem la de cima em baixo...Fora do loop...
Tá meio confuso o código mais espero que entendam.
Vou postar ele todo pra desencarno de consciencia:
<?php
$arquivo = file("ficheiros/adesivos/imagens/imagem1.txt");
for($i = 0; $i < count($arquivo); $i++){
$asd = ".$arquivo[$i].";
print "
<a href=javascript: void(0)><img src=".$arquivo[$i]." width=148px height=148px
onclick=\"document.getElementById('imagem_grande').src = 'ficheiros/adesivos/fotos/$i.bmp'\" border=0/></a>";}
?>
<!-- fim div galeria --></div>
<!-- fim div gal --></div>
<div id="conteudo">
<div id="foto2">
<!-- TA VENDO AQUI É ONDE A IMAGEM LÁ DE CIMA VEM PARAR QUANDO EU CLICKO NELA...
OU SEJA
O $i LÁ DE CIMA VEM PARA AQUI EM BAIXO, ACHO QUE É ISSO PELO MENOS, NÃO ENTENDO JAVASCRIPT!! -->
<img src="<?php echo "ficheiros/adesivos/fotos/1.bmp"; ?>" width="479px" height="360px" id="imagem_grande"/>
</div>
<div id="texto">
<font id="texto">
<br />
</font>
<!-- fim div texto --></div>
<!-- fim div conteudo --></div>
</body>
</html>tá... no final das contas você não tem a mínima idéia do que está fazendo..
vou tentar te explicar, e fazer um exemplo pra você entender também...
até aqui não tem nada de AJAX no teu post, nem no teu codigo, e nem na possível solução...
primeiro é bom, pararmos de confundir as coisas.
AJAX é um conceito.
Javascript é a linguagem web, que torna esse conceito possível, o objeto xmlHttpRequest, pra ser mais preciso... esse 'objeto', foi inicialmente criado pela microsoft, pra resolver alguns problemas lá do email, e depois acabou sendo adotado pelas outras engines, até virar especificação oficial.
bem didático e simples:
<html>
<head>
<script type="text/javascript">
function id( el ){
return document.getElementById( el );
}
window.onload = function(){
var imgs =id('miniaturas').getElementsByTagName('img');
for( var i=0; i<imgs.length; i++ ){
imgs[i].onclick = function(){
id('imagem_grande').src = this.alt;
}
}
}
</script>
</head>
<body>
<div id="miniaturas">
<img src="01_p.jpg" alt="01.jpg" />
<img src="02_p.jpg" alt="03.jpg" />
<img src="03_p.jpg" alt="02.jpg" />
</div><!-- /miniaturas -->
<img src="01.jpg" alt="" id="imagem_grande" />
</body>
</html>
vamos lá.. temos um container, chamado #miniaturas, nele eu listo as imagens em tamanho menor.. convencionando a nomenclatura do sufixo, com o _p
atribui o nome da imagem 'real', no tamanho grande referente a cada miniatura, no atributo alt delas, assim eu consigo fazer a troca facilmente..
pode ver, que chamei uma função no evento onclick, de cada imagem, que irá trocar o src da imagem com id #imagem_grande, pelo alt da miniatura clicada, fazendo assim, a 'troca', ampliação.
Oque eu quero fazer é simples:
Assim como a imagem la de baixo troca por causa do onclick em javascript, quero colocar esse mesmo valor em uma variavel PHP, não é questão de definição de conceito, isso ou aquilo, é apenas o valor de $i, tenho certeza absoluta que é possível pegar esse valor no onclick em javascript, só precisaria de alguma boa alma para me mostrar a sintaxe, SINTAXE APENAS!!!
NÃO ESTOU COM PROBLEMAS NA TROCA DA IMAGEM, FIZ ISSO NO ONCLICK COM UM VALOR PHP, FUNCIONA PERFEITAMENTE...
AGORA SÓ PRECISARIA RESGATAR ESSE VALOR EM VEZ DE PERDE-LO EM CADA CLICK...SE O VALOR EXISTE ACREDITO QUE É POSSÍVEL ARMAZENÁ-LO A CADA ONCLICK...
>
Oque eu quero fazer é simples:
Assim como a imagem la de baixo troca por causa do onclick em javascript, quero colocar esse mesmo valor em uma variavel PHP, não é questão de definição de conceito, isso ou aquilo, é apenas o valor de $i, tenho certeza absoluta que é possível pegar esse valor no onclick em javascript, só precisaria de alguma boa alma para me mostrar a sintaxe, SINTAXE APENAS!!!
NÃO ESTOU COM PROBLEMAS NA TROCA DA IMAGEM, FIZ ISSO NO ONCLICK COM UM VALOR PHP, FUNCIONA PERFEITAMENTE...
AGORA SÓ PRECISARIA RESGATAR ESSE VALOR EM VEZ DE PERDE-LO EM CADA CLICK...SE O VALOR EXISTE ACREDITO QUE É POSSÍVEL ARMAZENÁ-LO A CADA ONCLICK...
Já consegui resolver e adivinha?
Foi com onclick como eu havia dito, só precisava acertar a sintaxe ;)
cara, entendi nada.
é contra as regras do fórum, duplicar posts, pois atrapalha na organização do fórum.
?? oque isso significa?
se for fora do loop, você simplesmente vai perder o valor da variável.. e o valor que ela vai assumir, será o máximo $i, ou seja, o da última iteração... por isso não faz sentido.