Ver Mensaje Individual
  #6 (permalink)  
Antiguo 10/04/2010, 23:37
samu22
 
Fecha de Ingreso: abril-2008
Mensajes: 453
Antigüedad: 16 años, 1 mes
Puntos: 16
Respuesta: PHP y Javascript

Cita:
Iniciado por marcos46g Ver Mensaje
Asi puse el script

<script type="text/javascript">
function ini(){
var cont = document.getElementById('ImagenesCont');
var imgs = cont.getElementsByTagName('img');
var num = Math.floor(Math.random() * imgs.length);
document.getElementById('im').src = imgs[num].src; }
</script>

<body onload="ini()">
<div id="ImagenesCont" style="display:none">
<img src="<?$row["imagen1"];?>" />
<img src="<?$row["imagen2"];?>" />
<img src="<?$row["imagen3"];?>" />
<img src="<?$row["imagen4"];?>" />
</div>

pero no me funciona
lo que me deja dudas es que
include 'db.php';

$result=mysql_query("select * from avisos where idAviso='".$idAviso."'");
$row=mysql_fetch_array($result);

que es donde busco el Nombre de la imagen en la base de datos queda despues
y no me funciona
ese es un error totalment distinto de la funcionalidad de javascript, primero tendrias que verificara que mysql no te este dando errores, segundo $row obtendra los datos de la ultima fila ya que si no seteas una variable dentro de un ciclo while la variable se va a recorrer guardando sobre la misma varible el ultimo dato obtenido hasta llegar al ultimo. Ahora suponiendo que la consulta funciona perfectamente deberias obtener los datos e imprimrlos o guardarlos mientras se hace el bucle y luego utilizarlos, si primero pones la variable $row antes de definirla no vas a obtener ningun dato tampoco. Y cuando combinas html y php en linea debes imprimir los resultados para que sean visibles en la salida html prueba de esta manera:

Código PHP:
Ver original
  1. <html>
  2.     <head>
  3.         <script type="text/javascript">
  4.             function ini(){
  5.                 var cont = document.getElementById('ImagenesCont');
  6.                 var imgs = cont.getElementsByTagName('img');
  7.                 var num = Math.floor(Math.random() * imgs.length);
  8.                 document.getElementById('im').src = imgs[num].src;
  9.             }
  10.         </script>
  11.     </head>
  12.     <body onload="ini()">
  13.         <div id="ImagenesCont" style="display:none">
  14.             <?php
  15.                include 'db.php';
  16.                $result=mysql_query("select * from avisos where idAviso='".$idAviso."'");
  17.                 while($row=mysql_fetch_array($result)){
  18.             ?>  
  19.                  <img src="<?php echo $row['imagen'];?>" />    
  20.             <?php } //Fin del bucle?>
  21.         </div>

la funcion mysql_fetch_array va a recorrer el resulset devolviendo los datos de las filas, no va a generar una variable con campos de distintas filas, no se como sera la estructura de tu tabla solamente supuse que dentro de Avisos tendrias un campo imagen.

dentro del ciclo while puedes acceder a cualquier field de la fila que se esta recorriendo, si tienes 4 campos de imagenes puedes acceder a ellos desde el nombre del campo
EJEMPLO

[TABLA AVISOS]
id | titulo | contenido | imagen | imagen2 | imagen3 | imagen4

Código PHP:
Ver original
  1. <?php
  2.    while($row=mysql_fetch_array($result)){
  3. ?>  
  4.       <img src="<?php echo $row['imagen'];?>" />
  5.       <img src="<?php echo $row['imagen2'];?>" />
  6.       <img src="<?php echo $row['imagen3'];?>" />
  7.       <img src="<?php echo $row['imagen4'];?>" />    
  8. <?php
  9.     } //Fin del bucle
  10. ?>