Foros del Web » Programando para Internet » PHP »

Problema con onchange y php

Estas en el tema de Problema con onchange y php en el foro de PHP en Foros del Web. Hola a todos: Hace un par de días os escribí con un problemilla y me contestasteis pero al final no era tan dificil y he ...
  #1 (permalink)  
Antiguo 05/05/2007, 10:49
 
Fecha de Ingreso: diciembre-2006
Mensajes: 111
Antigüedad: 17 años, 4 meses
Puntos: 1
Problema con onchange y php

Hola a todos:

Hace un par de días os escribí con un problemilla y me contestasteis pero al final no era tan dificil y he conseguido hacerlo pero ahora tengo otro problema, creo que los tiros van por donde voy pero me falta algo, os explico:

Tengo una ventana con una imagen cuyo id="imagen_grande", debajo hy unas pequeñas imágenes que si les das se abren donde esta la imagen grande de id= "imagen grande", lo consigo de la siguiente forma:

<script language="JavaScript" type="text/JavaScript"><!--//para cargar las imagenes pequeñas en el lugar de la grande//-->
function abrir_imagen(url) {
document.getElementById('imagen_grande').src = url;
}
</script>

<td width="70" align="left" valign="bottom"><a href="#" onClick="abrir_imagen('../../<? echo $lineaimag2->imagen;?>');" onMouseOut="window.status=' '" onMouseOver="window.status='Ver im&aacute;gen';return true">
<img src='../../redimensionar.php?archivo=<? echo $lineaimag2->imagen;?>&ancho=50&alto=50' alt="Ver imágen" border="0"></a></td>

podeis ver la página en esta dirección:

http://www.hasiandasha.com/castellano/rincon/producto.php?id=00039G

Ahora el problema es que quiero poner una lista/menú y cuando elijes una de las opciones que se abra la imagen como he mencionado antes. He conseguido que abra una de las imagenes, peroel resto no, el problema es que el onchange está nates del bucle y entonces no carga las rutas de las imagenes cada vez, las imagenes y sus rutas están en una base de datos.

No sé si me explicomuy bien, os copió aquí abajo el código y podeis verlo todo en la dirección que os he puesto antes, espero que así me entendais.

Necesito vuestra ayuda, es para una tienda y estoy atascada, no encuentro a nadie que me pueda ayudar y yo no tengo mucho nivel, os agardezco mucho la yuada.

Un saludo

Alejandra

Código:

$consultaraza = "select * from razas_relac_galgo where cod_prod ='".mysql_real_escape_string($id)."'";
$resultid = mysql_query($consultaraza,$link)
or die ("Fallo en la consulta");
if ($linearaza=mysql_fetch_object($resultid))
{
?>
<tr>
<td width="100%" height="9" align="center" valign="bottom">
<table width="100%" border="0">
<tr>
<td width="95" align="left" valign="middle" class="textoinf">Ver im&aacute;gen de:</td>
<td width="1" align="left" valign="middle" class="textoinf"><img src="../../imag/pix.gif" width="1" height="36"></td>
<td valign="middle">
<select name="raza" class="textarea" id="raza" onchange="abrir_imagen('../../<? echo $linearaza->imagen;?>')">
<?
$consultaraza = "select * from razas_relac_galgo where cod_prod ='".mysql_real_escape_string($id)."'";
$resultid = mysql_query($consultaraza,$link);
$num_filas = 0;
while ($linearaza=mysql_fetch_object($resultid))
{
$idraza = $linearaza->cod_raza;

$consulta2 = "select * from razas where cod_raza ='$idraza'";
$resultid2 = mysql_query($consulta2,$link);
$num_filas2 = 0;
while ($linearaza2=mysql_fetch_object($resultid2))
{
$nom_raza = $linearaza2->nom_raza;
$cod_raza = $linearaza2->cod_raza;
?>
<option value="<?echo $linearaza2->cod_raza;?>"><?echo $linearaza2->nom_raza;?></option>
<?
$num_filas2++;
}

$num_filas2++;
}
?>
</select>
  #2 (permalink)  
Antiguo 05/05/2007, 11:06
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Problema con onchange y php

Haber si entendi... Cada raza tiene un juego de imagenes verdad?, y quieres que al cambiar en el select las razas se actualive esa barrita con la tira de imagenes de acuerdo a la raza que se escogio. Si ese es el caso, supongo que las imagenes pertenecientes a cada raza estan guardadas en una base de datos, que, revisando tu codigo, imagino que es la tabla razas... CUales son los campos de la tabla razas??

Creo q ya me confundi... Explica un poco mejor lo que quieres hacer...

Un saludo,
  #3 (permalink)  
Antiguo 05/05/2007, 12:10
 
Fecha de Ingreso: diciembre-2006
Mensajes: 111
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: Problema con onchange y php

Hola okram:

En primer lugar, gracias por ayudarme pero no me he explicado bien.
Creo que lo mejor es que entres en la pagina, elijas afgano 2, esperes un poco (no ese porque tarda tanto, con las imagenes pequeñitas no tarda tanto) y verás lo que pasa. Luego intenta elegir Saluki y veras qu eno pasa nada y creo que error es porque al no entrar en el bucle por eso no va, a ver si ahora me he explicado mejor, jejejeje, sino dímelo y lo intento de nuevo.

Muchas gracias

Alejandra
  #4 (permalink)  
Antiguo 05/05/2007, 12:53
 
Fecha de Ingreso: agosto-2005
Ubicación: Valencia
Mensajes: 76
Antigüedad: 18 años, 8 meses
Puntos: 1
Re: Problema con onchange y php

Vale

El error esta en la funcion JavaScript y en el PHP.

Este es el HTML de tu página:
Código HTML:
<select name="raza" class="textarea" id="raza" onchange="abrir_imagen('../../imag/hotdiggitydog/afghanhead.jpg')">
                <option value="AFG">Afgano</option>
                <option value="AFG2">Afgano 2</option>
                <option value="SAL">Saluki</option>
              </select> 
El error es este: onchange="abrir_imagen('../../imag/hotdiggitydog/afghanhead.jpg')">. Cada vez que se produzca el evento onChange se cargará la imagen: afghanhead.jpg; capichi?

Vale lo que puedes hacer es lo siguiente, a cada elemento del listado le debes dar el nombre de la imagen a cargar ej:

Código HTML:
<select name="raza" class="textarea" id="raza" onchange="abrir_imagen2()">
                <option value="afgano.jpg">Afgano</option>
                <option value="afgano2.jpg">Afgano 2</option>
                <option value="saluki.jpg">Saluki</option>
              </select> 
Esto lo tendras que hacer con PHP en el bucle.

Luego la funcion JavaScript debe ser algo asi

__________________
Quien a buen árbol se arrima, buena sombra le cobija. :aplauso:

http://dbtrucos.com
  #5 (permalink)  
Antiguo 05/05/2007, 12:56
 
Fecha de Ingreso: agosto-2005
Ubicación: Valencia
Mensajes: 76
Antigüedad: 18 años, 8 meses
Puntos: 1
Re: Problema con onchange y php

Vale

El error esta en la funcion JavaScript y en el PHP.

Este es el HTML de tu página:
Código HTML:
<select name="raza" class="textarea" id="raza" onchange="abrir_imagen('../../imag/hotdiggitydog/afghanhead.jpg')">
                <option value="AFG">Afgano</option>
                <option value="AFG2">Afgano 2</option>
                <option value="SAL">Saluki</option>
              </select> 
El error es este: onchange="abrir_imagen('../../imag/hotdiggitydog/afghanhead.jpg')">. Cada vez que se produzca el evento onChange se cargará la imagen: afghanhead.jpg; capichi?

Vale lo que puedes hacer es lo siguiente, a cada elemento del listado le debes dar el nombre de la imagen a cargar ej:

Código HTML:
<select name="raza" class="textarea" id="raza" onchange="abrir_imagen2()">
                <option value="afgano.jpg">Afgano</option>
                <option value="afgano2.jpg">Afgano 2</option>
                <option value="saluki.jpg">Saluki</option>
              </select> 
Esto lo tendras que hacer con PHP en el bucle.

Luego la funcion JavaScript debe ser algo asi

Código HTML:
function abrir_imagen2()
{
   var Url = "http://tu_url/hacia/las/imagenes/";

   document.getElementById('imagen').src = Url + document.getElementById('raza').value;
}
De este modo conseguirás el efecto que deseas.

Suerte!!
__________________
Quien a buen árbol se arrima, buena sombra le cobija. :aplauso:

http://dbtrucos.com

Última edición por el-eles; 05/05/2007 a las 12:59 Razón: No lo habia acabado
  #6 (permalink)  
Antiguo 05/05/2007, 14:33
 
Fecha de Ingreso: diciembre-2006
Mensajes: 111
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: Problema con onchange y php

Gracias, ya lo he hecho pero no va, carga el dato en value bien pero no abre la imagen, puedes entra a verlo, creo que el error debe estar aqui: document.getElementById('imagen).src = Url + document.getElementById('raza').value;

Me puedes decir que quiere decir 'imagen' y 'raza? ? porque puede que deba poner algo y no lo se, lo siento pero de javascript no se casi nada.

Muchas gracias
  #7 (permalink)  
Antiguo 05/05/2007, 14:47
 
Fecha de Ingreso: diciembre-2006
Mensajes: 111
Antigüedad: 17 años, 4 meses
Puntos: 1
De acuerdo Re: Problema con onchange y php

Ya esta!!!!!!!!!!!! Mil gracias, ya va, el problema es que en la linea de javascript 'imagen' debía ser 'imagen_grande' que es donde debe abrirse la imagen, siiiii

Muchas gracias llevaba dos días con esto y miraba webs y era complicadísimo, y mira no era para tanto, no se porque en las paginas ponían codigos tan sumamente rebuscados.

Muchas gracias

Un saludo

Alejandra
  #8 (permalink)  
Antiguo 05/05/2007, 14:55
 
Fecha de Ingreso: diciembre-2006
Mensajes: 111
Antigüedad: 17 años, 4 meses
Puntos: 1
Re: Problema con onchange y php

Bueno, casi va.... :( Si pongo solo las razas, sale la primera seleccionada, y si abres la lista y seleccionas la primera no la abre, desbes seleccionar primero otra, para arreglarlo he puesto "Seleccciona raza" y así deben abrir la lista y seleccionar la que quieras, pero si por un casual, seleccionas de nuevo los de "Seleccionar raza" te sale la molesta x roja, claro ese dato no tiene valor....

¿sabes como puedo arreglarlo?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:13.