Programación Web y Scripting > PHP
Dar Permisos A Una Carpeta
zaida20:
el código de conexion a la base de datos lo tengo puesto es que lo obvie en el código que te puse ;) , este está completo:
--- Código: Text ---<?php$dp_di="localhost";$db_usuario="espia";$clave_db='ESPIAAA';$conexion=mysql_connect($dp_di,$db_usuario,$clave_db);if($conexion==NULL){ printf("Error");}//conectamos con la base de datos utopia$db='utopia2';mysql_select_db($db,$conexion)or die("No se puede seleccionar bd"); if (is_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'])){ echo $HTTP_POST_FILES['userfile']['name']; chmod('C:/Archivos de programa/Apache Group/Apache/htdocs/fundacion_utopia/subir_imagenes/imagenes','0700'); move_uploaded_file($HTTP_POST_FILES['userfile']['name'],"C:/Archivos de programa/Apache Group/Apache/htdocs/fundacion_utopia/subir_imagenes/imagenes");}else{ echo "Psible file upload atrrack. Filename: " . $HTTP_POST_FILES['userfile']['name'];} ?>
No consuigo encontrar el error y saber porqué no funciona :blink: , de todas formas :gracias:
Saludos: :hola:
Avalon:
Para encontrar el error tienes que intentar acotar el problema. Ya nos has dicho que no funciona, pero que es lo que no funciona exactamente? No se guardan las imágenes? No se inserta el registro en la base de datos? Donde termina la ejecución del código (si es que se interrumpe)?
Decías más arriba que habías conseguido que el script funcionara localmente. Si en el script trabajas con rutas absolutas como
--- Citar ---chmod('C:/Archivos de programa/Apache Group/Apache/htdocs/fundacion_utopia/subir_imagenes/imagenes','0700');
--- Fin de la cita ---
es lógico que solo funcione localmente porque con casi toda probabilidad la ruta va a ser distinta en el servidor.
zaida20:
Lo siento quizás no me expliqué bien, el código correcto es éste:
--- Código: Text ---<?php//conectamos con base de datos$dp_di="localhost";$db_usuario="espia";$clave_db='ESPIAAA';$conexion=mysql_connect($dp_di,$db_usuario,$clave_db);if($conexion==NULL){ printf("Error");}//conectamos con la base de datos utopia2$db='utopia2';mysql_select_db($db,$conexion)or die("No se puede seleccionar bd"); chmod('./imagenes/','0777');if($_FILES['fichero']['name']!=NULL){ $uploadfile_temporal=$_FILES['fichero']['tmp_name']; $uploadfile_nombre="imagenes/".$_FILES['fichero']['name']; $ruta_foto='imagenes/'.$_FILES['fichero']['name'];//recoge la ruta de la imagen(carpeta y nombre) if (is_uploaded_file($uploadfile_temporal)) { move_uploaded_file($uploadfile_temporal,$uploadfile_nombre); //echo "ok"; } else { echo "error"; }//insertamos las imágenes en la bd $sql="INSERT INTO img (foto) VALUES ('$ruta_foto')"; $res = mysql_query($sql); if (!$res) echo "Error al ejecutar la consulta";}//hacemos la consulta$obtener_foto="select foto, id from img";$i=0;$consulta=mysql_query($obtener_foto,$conexion)or die(mysql_error());;if($consulta!=NULL){ if(mysql_num_rows($consulta)!=0) { while($row=mysql_fetch_array($consulta)) { $imagen[$i]=$row['foto']; $id=$row['id']; $size= getimagesize ($imagen[$i]); $ancho[$i]= (int) ($size [0] * 0.3); $alto[$i]= (int) ($size [1] * 0.3); $i++; } }} ?> <html><head><title>Documento sin título</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head> <body><?php$i=0;while($imagen[$i]!=NULL){?><img src="<?php echo $imagen[$i];?>" width="<?php echo $ancho[$i]; ?>" height="<?php echo $alto[$i];?>"> <?php$i++;}?></body></html>
La imagen la guarda, el archivo también lo inserta en la bd, el problema es a la hora de mostrar las imagenes que contiene la carpeta y la bd. Siento las molestias y muchas gracias
Saludos: :hola:
Avalon:
El código parece correcto. Entiendo que al ejecutarlo en local las imágenes si que las muestra pero cuando lo ejecutas en el servidor no, es así? En caso afirmativo, habría alguna posibilidad de que podamos probar el script que tienes alojado en tu servidor? Quizá haciendo una prueba directamente podamos descubrir donde está el problema...
Salu2,
Avalon
shadow_rev:
Sólo una pregunta....
¿Qué tipo de ruta para la imagen estas guardando en la bd? Si es una ruta absoluta, es lógico que la etiqueta img no muestre la imagen.
imprime la ruta de la(s) imagen(es) y nos cuentas:
--- Código: Text ---<p><?php echo $imagen[$i]; ?></p>
edito...
O puedes hacer esto...
--- Código: Text ---<img src="http://servidor.dominio.xxx/<?php echo $imagen[$i];?>" width="<?php echo $ancho[$i]; ?>" height="<?php echo $alto[$i];?>"> http://servidor.dominio.xxx/ es la url por la cual accedes a la página.
Prueba también si puedes acceder a las imágenes llamándolas por el navegador por medio de la URL (http://nombre_host/imagenes/xxx.jpg por ejemplo)
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa