Comunidad de diseño web y desarrollo en internet online

problema mostrando imágenes en PHP

Citar            
MensajeEscrito el 27 Oct 2011 08:14 pm
Buenas, tengo un problema subiendo imágenes al servidor, resulta que si puedo copiar las imágenes a una carpeta en el servidor, el problema viene al actuar con MySQL, según mi pensada, guardo el nombre de la imagen en un campo de la tabla y luego aquí mismo(para no llenar de código este tema) lo selecciono y según yo lo iba a mostrar solamente con llenar con el nombre la etiqueta <img>.

el error es que no me muestra nada, les pongo todo el código pero en verdad creo que el problema solo esta al final, al hacer la consulta e intentar mostrar la imagen, pueden ayudarme por favor

<?php
include('conexion.php');
$conn=Conectarse();
$max=1500000;
$directorio = $_SERVER['DOCUMENT_ROOT'].'DEI/imagenes/DEI_';

$nombre = trim($_FILES['imagen']['name']);
$tipo = $_FILES['imagen']['type'];
$tamano = $_FILES['imagen']['size'];

if($tamano < $max){
if($tamano > 0){
if (!((strpos($tipo, "gif") || strpos($tipo, "jpeg") || strpos($tipo, "JPG")|| strpos($tipo, "PNG")|| strpos($tipo, "bmp")|| strpos($tipo, "png") || strpos($tipo, "JPEG") || strpos($tipo, "jpg") || strpos($tipo, "BMP") || strpos($tipo, "GIF"))) ) {
echo "tipo de imagen no es correcta";
}else{
if (move_uploaded_file($_FILES['imagen']['tmp_name'],$directorio.$nombre)){
print("Archivo subido correctamente");
} else {
print("Error de conexi&oacute;n con el servidor.");
}
}
}else {
print("<br><br>Campo vac&iacute;o, no ha seleccionado ninguna imagen");
}

}else {
print("<br><br>La imagen que ha intentado adjuntar es mayor de 1.5 Mb, cambie el tamaño del archivo y vuelva a intentarlo.");
}

$sql = "INSERT into tablita (nombre) values ('$nombre')";
$resultado = mysql_query($sql);
if(mysql_affected_rows($conn) > 0){
echo "y se guardo";
}


$consul ="SELECT nombre FROM tablita WHERE id='1'";
$res=mysql_query($consul,$conn);
$filas=mysql_fetch_array($res);
?>

<html><body>
<img src="<?php// echo $filas['nombre']; ?>" width="280" height="420">
</body></html>

Por pabletoreto

11 de clabLevel



Genero:Masculino  

Software Developer

chrome
Citar            
MensajeEscrito el 28 Oct 2011 12:06 pm
Esta línea:

Código PHP :

<img src="<?php// echo $filas['nombre']; ?>" width="280" height="420">

está comentada.
Quita la doble barra.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 28 Oct 2011 07:46 pm
ya las quite pero igual no me muestra nada, trato de mostrar la imagen segun la URl pero no puedo, el codigo ahora es este:

<?php
include('conexion.php');
if(is_uploaded_file($_FILES['imagen']['tmp_name'])) {
$conn=Conectarse();
$max=1500000;
$directorio = $_SERVER['DOCUMENT_ROOT'].'DEI/imagenes/';

$nombre = trim($_FILES['imagen']['name']);
$tipo = $_FILES['imagen']['type'];
$tamano = $_FILES['imagen']['size'];
$ruta= $directorio.$_FILES['imagen']['name'];

if($tamano < $max){
if($tamano > 0){
if (!((strpos($tipo, "gif") || strpos($tipo, "jpeg") || strpos($tipo, "JPG")|| strpos($tipo, "PNG")|| strpos($tipo, "bmp")|| strpos($tipo, "png") || strpos($tipo, "JPEG") || strpos($tipo, "jpg") || strpos($tipo, "BMP") || strpos($tipo, "GIF"))) ) {
echo "tipo de imagen no es correcta";
}else{
if (move_uploaded_file($_FILES['imagen']['tmp_name'],$ruta)){
print("Archivo subido correctamente");
} else {
print("Error de conexi&oacute;n con el servidor.");
}
}
}else {
print("<br><br>Campo vac&iacute;o, no ha seleccionado ninguna imagen");
}

}else {
print("<br><br>La imagen que ha intentado adjuntar es mayor de 1.5 Mb, cambie el tamaño del archivo y vuelva a intentarlo.");
}

$sql = "INSERT into tablita (nombre) values ('$ruta')";
$resultado = mysql_query($sql);
if(mysql_affected_rows($conn) > 0){
echo "y se guardo";
}


$consul ="SELECT nombre FROM tablita WHERE id='15'";
$res=mysql_query($consul,$conn);
$filas=mysql_fetch_array($res);
$mostrar=$filas['nombre'];
echo "$mostrar";
}?>

<html><body>
<br>
<img src='<?php $mostrar ?>' height="800" width="700">
</body></html>

solo muestra una imagen pequeña cortada que es la que saca por default windows cuando no encuentra la imagen. ayuda por favor

Por pabletoreto

11 de clabLevel



Genero:Masculino  

Software Developer

chrome
Citar            
MensajeEscrito el 29 Oct 2011 03:42 pm
cuando tienes errores en html y php lo que tienes que hacer es ver el codigo fuente generado como usas chrome entonces haces click boton derecho "ver codigo fuente de pagina"
y ver la url generada en la imagen
por lo que vi en tu codigo quieres mostrar la ruta interna del server y eso no se puede
es como si tratases de mostrar una imagen asi, y ovio que te retornara error

Código :

<img src='C:\appserv\www\sitio_de_pepito\imagenes\xxx.jpg' height="800" width="700"> 

cuando lo correcto seria

Código :

<img src='http://localhost/sitio_de_pepito/imagenes/xxx.jpg' height="800" width="700"> 

revisa tu variable $directorio

Código PHP :

//esto esta mal
$directorio = $_SERVER['DOCUMENT_ROOT'].'DEI/imagenes/'; 
//esto deberia quedar asi
$directorio = $_SERVER['DOCUMENT_ROOT'].'/DEI/imagenes/';
//Notas la diferencia???

soluciona los problemas que te mencione y tu script correra como quieres, pero te aconsejaria que aprendas mas a fondo xhtml
puedes optimizar tu codigo
en la parte de STRPOS podrias usar STRIPOS o mejor aun
la funcion pathinfo
http://es2.php.net/manual/es/function.pathinfo.php
y la funcion in_array()
http://es2.php.net/in_array

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 29 Oct 2011 04:56 pm

tuadmin escribió:

cuando tienes errores en html y php lo que tienes que hacer es ver el codigo fuente generado como usas chrome entonces haces click boton derecho "ver codigo fuente de pagina"
y ver la url generada en la imagen
por lo que vi en tu codigo quieres mostrar la ruta interna del server y eso no se puede
es como si tratases de mostrar una imagen asi, y ovio que te retornara error

Código :

<img src='C:\appserv\www\sitio_de_pepito\imagenes\xxx.jpg' height="800" width="700"> 

cuando lo correcto seria

Código :

<img src='http://localhost/sitio_de_pepito/imagenes/xxx.jpg' height="800" width="700"> 

revisa tu variable $directorio

Código PHP :

//esto esta mal
$directorio = $_SERVER['DOCUMENT_ROOT'].'DEI/imagenes/'; 
//esto deberia quedar asi
$directorio = $_SERVER['DOCUMENT_ROOT'].'/DEI/imagenes/';
//Notas la diferencia???

soluciona los problemas que te mencione y tu script correra como quieres, pero te aconsejaria que aprendas mas a fondo xhtml
puedes optimizar tu codigo
en la parte de STRPOS podrias usar STRIPOS o mejor aun
la funcion pathinfo
http://es2.php.net/manual/es/function.pathinfo.php
y la funcion in_array()
http://es2.php.net/in_array

Por pabletoreto

11 de clabLevel



Genero:Masculino  

Software Developer

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.