Foros del Web » Programando para Internet » PHP »

imagenes en php

Estas en el tema de imagenes en php en el foro de PHP en Foros del Web. Hola a todos y gracias por adelantado. Soy nuevo en esto y tengo un problema. Quisiera hacer una funcion que me contara los archivos de ...
  #1 (permalink)  
Antiguo 04/10/2010, 03:21
 
Fecha de Ingreso: octubre-2010
Mensajes: 4
Antigüedad: 13 años, 6 meses
Puntos: 0
imagenes en php

Hola a todos y gracias por adelantado. Soy nuevo en esto y tengo un problema. Quisiera hacer una funcion que me contara los archivos de un directorio, y luego aleatoriamente me mostrase una foto. He hecho esto pero no me muestra ninguna, si alguien sabe porque por favor me lo diga.

<?php
$path = "/home/hector/";
$nombredir = "imagenes";

function cuentaficheros($nombredir) {
$numerodefichs=0;
if (is_dir($nombredir)) {
if ($dir = opendir($nombredir)) {
while (($nombrefich=readdir($dir))!=false)
if ((!is_dir($nombredir . "/$nombrefich"))&&($nombrefich{0}!="."))
$numerodefichs++;
closedir($dir);
return $numerodefichs;
}
else return -1;
}
else return -1;
}
?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"
/>
<title>script</title>
</head>
<body>

<?php

$pathcompleto = $path . $nombredir;
if (is_dir($pathcompleto)) {
$numfichs=cuentaficheros($pathcompleto);
if ($numfichs>0) {
$alea=rand(1,$numfichs);
$dir=opendir($pathcompleto);
while ($alea>0) {
$nombrefich=readdir($dir);
if (($nombrefich{0}==".")||(is_dir($pathcompleto . "/$nombrefich")))
continue;
$alea--;
}

print "<img src=\"/home/hector/$nombredir/" . $nombrefich . "\" />";
}
}
?>
<p>Contenido de la p&aacute;gina</p>
</body>
</html>


Saludos
  #2 (permalink)  
Antiguo 04/10/2010, 03:25
 
Fecha de Ingreso: septiembre-2010
Ubicación: http://nomenrecordo.blogspot.com/
Mensajes: 111
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: imagenes en php

¿Has probado de imprimir (echo) lo guardado en la variable? Puede que no te este cogiendo el formato de la imagen o que tengas el path mal.
  #3 (permalink)  
Antiguo 04/10/2010, 03:32
 
Fecha de Ingreso: octubre-2010
Mensajes: 4
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: imagenes en php

Si, si he probado. En chrome me sale como un cuadro de que no puede mostrar la imagen y en Firefox no me sale nada.
Pruebo fuera del php con

<img src="/home/hector/imagenes/image.png"/>

y tampoco me muestra la imagen.
  #4 (permalink)  
Antiguo 04/10/2010, 03:44
 
Fecha de Ingreso: septiembre-2010
Ubicación: http://nomenrecordo.blogspot.com/
Mensajes: 111
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: imagenes en php

la etiqueta <im> es exclusiva de HTML, no la puedes integrar dentro un script php. Lo tienes que hacer así

<html>
<?php // Cosas en php ?> <img> <?php //Más cosas en PHP ?>
</html>
  #5 (permalink)  
Antiguo 04/10/2010, 03:54
 
Fecha de Ingreso: octubre-2010
Mensajes: 4
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: imagenes en php

ya pero si pongo con comillas si que lo puedo poner dentro de php

print "<img src=\"/home/hector/$nombredir/" . $nombrefich . "\" />";

porque necesito usar las variables
  #6 (permalink)  
Antiguo 04/10/2010, 04:18
 
Fecha de Ingreso: septiembre-2010
Ubicación: http://nomenrecordo.blogspot.com/
Mensajes: 111
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: imagenes en php

Yo lo tengo así:

?>
<div id="imatge">
<img src="<?php echo "../imgTrobats/$pr"; ?>" width="<?php echo $amp; ?>" height="150" alt="Trobat" style="float: left;">
</div>
<?php
  #7 (permalink)  
Antiguo 04/10/2010, 07:57
 
Fecha de Ingreso: octubre-2010
Mensajes: 4
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: imagenes en php

Que va pues sigue sin irme. No tengo que incluir en la cabecera nada parar cargar las imagenes jpg o png no?
Es que ya no se que mas probar!!

Etiquetas: imagenes
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 21:39.