Foros del Web » Programando para Internet » PHP »

Script con Php

Estas en el tema de Script con Php en el foro de PHP en Foros del Web. Hola a todos, necesito poder añadir los nombres de las imagenes desde una base de datos con mysql. Informaros que no tengo mucha idea de ...
  #1 (permalink)  
Antiguo 04/04/2009, 06:05
thi
 
Fecha de Ingreso: abril-2009
Mensajes: 244
Antigüedad: 15 años
Puntos: 0
Script con Php

Hola a todos,

necesito poder añadir los nombres de las imagenes desde una base de datos con mysql. Informaros que no tengo mucha idea de php.

Un saludo.

Scrpit:

<script language='JavaScript1.2'>
var dropimages=new Array()
// CONFIGURA LOS NOMBRES DE LAS IMÁGENES. Puedes agregar o restar imágenes si es necesario
dropimages[0]="images/imagen1.jpg"
dropimages[0].height=680
dropimages[0].width=472
</script>



<script language="JavaScript1.2">

var slideshow_width=472 // CONFIGURA EL ANCHO DEL SLIDESHOW (coloca el más ancho si utilizas imágenes de distintas dimensiones)
var slideshow_height=680 // CONFIGURA EL ALTO DEL SLIDESHOW (coloca el más alto si utilizas imágenes de distintas dimensiones)
var pause=3000 // CONFIGURA LA PAUSA ENTRE LAS IMÁGENES (2000=2 segundos)
</script>

<script language="JavaScript1.2">
var droplinks=new Array()
// CONFIGURA LOS VÍNCULOS DE LAS IMÁGENES. Puedes agregar o restar direcciones si es necesario
//droplinks[0]=""
//droplinks[1]=""
//droplinks[2]=""

////NO NECESITAS CONFIGURAR MÁS NADA A PARTIR DE AQUÍ/////////////

var preloadedimages=new Array()
for (p=0;p<dropimages.length;p++){
preloadedimages[p]=new Image()
preloadedimages[p].src=dropimages[p]
}

var ie4=document.all&&navigator.userAgent.indexOf("Ope ra")==-1
var dom=document.getElementById&&navigator.userAgent.i ndexOf("Opera")==-1

if (ie4||dom)
document.write('<div style="position:relative;width:'+slideshow_width+' ;height:'+slideshow_height+';overflow:hidden"><div id="canvas0" style="position:absolute;width:'+slideshow_width+' ;height:'+slideshow_height+';top:-'+slideshow_height+'"></div><div id="canvas1" style="position:absolute;width:'+slideshow_width+' ;height:'+slideshow_height+';top:-'+slideshow_height+'"></div></div>')
else
document.write('<a href="javascript:rotatelink()"><img name="defaultslide" src="'+dropimages[0]+'" border=0 height=680 width=472></a>')

var curpos=slideshow_height*(-1)
var degree=10
var curcanvas="canvas0"
var curimageindex=0
var nextimageindex=1


function movepic(){
if (curpos<0){
curpos=Math.min(curpos+degree,0)
tempobj.style.top=curpos
}
else{
clearInterval(dropslide)
nextcanvas=(curcanvas=="canvas0")? "canvas0" : "canvas1"
tempobj=ie4? eval("document.all."+nextcanvas) : document.getElementById(nextcanvas)
tempobj.innerHTML='<a href="'+droplinks[curimageindex]+'"><img src="'+dropimages[curimageindex]+'" border=0 height=680 width=472></a>'
nextimageindex=(nextimageindex<dropimages.length-1)? nextimageindex+1 : 0
setTimeout("rotateimage()",pause)
}
}

function rotateimage(){
if (ie4||dom){
resetit(curcanvas)
var crossobj=tempobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas)
crossobj.style.zIndex++
var temp='setInterval("movepic()",50)'
dropslide=eval(temp)
curcanvas=(curcanvas=="canvas0")? "canvas1" : "canvas0"
}
else
document.images.defaultslide.src=dropimages[curimageindex]
linkindex=curimageindex
curimageindex=(curimageindex<dropimages.length-1)? curimageindex+1 : 0
}

function rotatelink(){
window.location=droplinks[linkindex]
}

function resetit(what){
curpos=slideshow_height*(-1)
var crossobj=ie4? eval("document.all."+what) : document.getElementById(what)
crossobj.style.top=curpos}

function startit(){
var crossobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas)
crossobj.innerHTML='<a href="'+droplinks[curimageindex]+'"><img src="'+dropimages[curimageindex]+'" border=0 height=680 width=472></a>'
rotateimage()
}

if (ie4||dom)
window.onload=startit
else
setInterval("rotateimage()",pause)

</script>
  #2 (permalink)  
Antiguo 04/04/2009, 09:41
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Script con Php

http://www.php.net/manual/es/book.mysql.php

Busca:
mysql_connect()
mysql_select_db()
mysql_query()
mysql_fetch_array()
  #3 (permalink)  
Antiguo 06/04/2009, 04:04
thi
 
Fecha de Ingreso: abril-2009
Mensajes: 244
Antigüedad: 15 años
Puntos: 0
Respuesta: Script con Php

Hola,

gracias por tu respuesta, pero se me olvido decir que abrir la base de datos y leer la información de la misma ya se hacerlo pero lo que no se es como meter el resultado de la busqueda en la base de datos en el script de javascript.
En una palabra que lo que necesito es:
- Una vez que ya he encontrado la información de las imagenes que quiero de la base de datos, poner el nombre de estas imagenes en lugar de tener que escribirlo en el codigo javascript.

Un saludo.
  #4 (permalink)  
Antiguo 06/04/2009, 07:41
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Script con Php

Disculpa, es que tu pregunta parecía tan general xD

Bueno ... Luego que hagas la consulta y obtengas los datos solo imprimes en el Javascript lo que necesites, un ejemplo:

Código PHP:
<script language='JavaScript1.2'>
var dropimages=new Array();
<?php
$query 
"SELECT * FROM imagenes ORDER BY RAND() LIMIT 10"//solo un ejemplo, para tomar 10 imagenes al azar
$result mysql_query($query);
$i 0;
while(
$row mysql_fetch_array($result)) {
  echo 
'dropimages['.$i.']="'.$row['ruta'].'";'//imprimo la ruta
  
echo 'dropimages['.$i.'].height=680;';
  echo 
'dropimages['.$i.'].width=472;';
  
$i++;
}
?></script>
  #5 (permalink)  
Antiguo 07/04/2009, 05:44
thi
 
Fecha de Ingreso: abril-2009
Mensajes: 244
Antigüedad: 15 años
Puntos: 0
Respuesta: Script con Php

Hola Ronruby,

gracias por tus respuestas, la verdad es que tiene muy buena pinta, pero no me acaba de funcionar.

Y eso que con "echo" me muestra correctamente la lectura de la base de datos, pero no me carga la imagen a pesar de que la funcionalidad del script si le ejecuta(me muestra cambios de imagenes pero transparentes).

A continuación te muestro como he puesto el codigo a ver si ves algún fallo:

<script language='JavaScript1.2'>
var dropimages=new Array()

<?php
defined( '_VALID_MOS' ) or die( 'Restricted access' );
echo '<link rel="STYLESHEET" type="text/css" href="csstablas.css">';
$username = "*";
$password = "*";
$hostname = "*";

$dbh = mysql_connect($hostname, $username, $password)
or die("Error accediendo al servidor de base de datos");

$selected = mysql_select_db("avyom",$dbh)
or die("Error al acceder a la base de datos");

$query = "SELECT * FROM premium ORDER BY RAND()";

$result = mysql_query($query);

// CONFIGURA LOS NOMBRES DE LAS IMÁGENES. Puedes agregar o restar imágenes si es necesario
$i = 0;
while($row = mysql_fetch_array($result)) {
dropimages['.$i.']="'.$row{'oferta1'}.'" //imprimo la ruta
dropimages['.$i.'].height=680
dropimages['.$i.'].width=472
$i++;
}
?>
</script>
  #6 (permalink)  
Antiguo 07/04/2009, 17:03
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Script con Php

Cita:
dropimages['.$i.']="'.$row{'oferta1'}.'" //imprimo la ruta
dropimages['.$i.'].height=680
dropimages['.$i.'].width=472
No estas imprimiendo, tienes que usar echo para imprimir. Y es $row['oferta1']
  #7 (permalink)  
Antiguo 08/04/2009, 12:34
thi
 
Fecha de Ingreso: abril-2009
Mensajes: 244
Antigüedad: 15 años
Puntos: 0
Respuesta: Script con Php

Hola Ronruby,

gracias por el interes que te estas tomando, pero si le pongo "echo" delante como me has dicho, lo que hace es escribirme el texto en pantalla, eso si leyendo los datos correctamente de la base de datos.

Un saludo.
  #8 (permalink)  
Antiguo 08/04/2009, 12:45
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Script con Php

Es la unica manera, ya que no hay forma de que Javascript lea variables declaradas con PHP y viceversa.
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 17:48.