Foros del Web » Programando para Internet » PHP »

subir imagen al servidor

Estas en el tema de subir imagen al servidor en el foro de PHP en Foros del Web. hola tengo un script que sube una noticia con imagen al servidor , mientras estaba trabajando localmente me funcionaba , ahora ya no funciona al ...
  #1 (permalink)  
Antiguo 04/05/2010, 05:36
 
Fecha de Ingreso: mayo-2008
Mensajes: 76
Antigüedad: 15 años, 10 meses
Puntos: 1
subir imagen al servidor

hola tengo un script que sube una noticia con imagen al servidor , mientras estaba trabajando localmente me funcionaba , ahora ya no funciona al subirlo a mi servidor de internet, porque puede pasar esto?
  #2 (permalink)  
Antiguo 04/05/2010, 05:40
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: subir imagen al servidor

1. Pon el código, tanto el formulario como el que se dedica a subir la imagen
2. De que tamaño son las imagenes que estás subiendo? ¿Sabes el limite de tamaño que tiene puesto tu servidor a la hora de subir archivos via HTTP?

Un saludo
  #3 (permalink)  
Antiguo 04/05/2010, 05:43
 
Fecha de Ingreso: mayo-2008
Mensajes: 76
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: subir imagen al servidor

Este es el formulario:

<form name='frm_img_cabecera' method='post' action='index.php' enctype="multipart/form-data">
<input type='hidden' name='hacer' value='noticia' />
<table>
<tr>
<td colspan='2'>NOTICIA</td>
</tr>
<tr>
<td>Fecha</td>
<td class='newfecha'> <input size="30" id="f_date1" name='fecha'/>&nbsp;&nbsp;<span class='cal' id="f_btn1">CAL</span></td>
</tr>
<tr>
<td>Título</td>
<td><input type='text' name='titulo' size='80' value="<?php echo $fila['titulo'];?>" ></input></td>
</tr>

<tr>
<td>Descripcion</td>
<td class='textarea_editor'><textarea class='texta' name="descripcion"></textarea></td>
</tr>

<tr>
<td>Imagen</td>
<td><input type='file' name='imagen_noticia' size='55'/></td>
</tr>

<tr>
<td>PDF Adjunto</td>
<td><input type='file' name='pdf_noticia' size='55'/></td>
</tr>

<tr>
<td>Fuente</td>
<td><input type='text' name='fuente' size='80' value='<?php echo $fila['fuente'];?>'></input></td>
</tr>

<tr>
<td><input type='submit' value='enviar' /></td>
</tr>
</table>

</form>






y esto inserta una noticia:


function insertar_noticia($con,$titulo,$descripcion,$fecha, $fuente,$imagen_noticia){

$sql="INSERT into noticias (titulo,descripcion,fuente,fecha)
VALUES ('$titulo','$descripcion','$fuente','$fecha')";
//echo $sql;
mysqli_query($con,$sql) or die ("error de insercion");

$sql="SELECT MAX(idnoticias) from noticias";
$resultado=mysqli_query($con,$sql);
$max=mysqli_fetch_row($resultado);

if ( !empty ($_FILES['imagen_noticia']['tmp_name'])){
$info=GetImageSize($_FILES['imagen_noticia']['tmp_name']);

switch ($info[2]){
case 1:
$extension=gif;
break;
case 2:
$extension=jpg;
break;
case 3:
$extension=png;
break;
}

$dir = "../imagenes/actualidad/noticias/";

chmod($dir,0777);
copy($_FILES['imagen_noticia']['tmp_name'],$dir.$max['0'].".".$extension);

$sql="UPDATE noticias SET imagen_noticia = 'imagenes/actualidad/noticias/".$max['0'].".".$extension."'
where idnoticias =".$max['0'];
//echo $sql;
mysqli_query($con,$sql) or die ("<div class='error'>error de actualizacion IMAGEN</div>");
}

if ( !empty ($_FILES['pdf_noticia']['tmp_name'])){
$archivo_temporal = $_FILES['pdf_noticia']['name'];

$extension = extension($archivo_temporal);
if ($extension == 'pdf'){

//echo "ruta: ".$dir = "../imagenes/actualidad/noticias/pdf/";
$dir = "../imagenes/actualidad/noticias/pdf/";
chmod($dir,0777);
copy($_FILES['pdf_noticia']['tmp_name'],$dir.$max['0'].".".$extension);

$sql="UPDATE noticias SET pdf_noticia = 'imagenes/actualidad/noticias/pdf/".$max['0'].".".$extension."'
where idnoticias =".$max['0'];
echo $sql;
mysqli_query($con,$sql) or die ("<div class='error'>error de actualizacion PDF</div>s");
}
else echo "<div class='error'>Solo puedes subir archivos pdf</div>";
}

header ("Location: index.php?hacer=noticias&ruta1=noticias");
}


El tamaño de la imagen no lo se mirare a ver si esta limitado
  #4 (permalink)  
Antiguo 04/05/2010, 05:52
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años
Puntos: 40
Respuesta: subir imagen al servidor

Prueba subiendo archivos pequeños, los más pequeños que puedas, así veremos si el problema es por el peso del archivo que subes.

Un saludo
  #5 (permalink)  
Antiguo 04/05/2010, 05:55
 
Fecha de Ingreso: mayo-2008
Mensajes: 76
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: subir imagen al servidor

No tampoco es eso he intentado subir una image de 5k y tmpco sube todo el contenido menos la imagen a la carpeta que quiero voy a probar con una ruta mas simple a ver si puede ser eso (que no lo creo, porque si me funcionaba en el local).
  #6 (permalink)  
Antiguo 04/05/2010, 06:52
Avatar de martin0341  
Fecha de Ingreso: septiembre-2006
Ubicación: Rosario - Santa Fe
Mensajes: 296
Antigüedad: 17 años, 7 meses
Puntos: 8
Respuesta: subir imagen al servidor

FIjate que tengas permisos de escritura sobre la carpeta noticias.
Mas de una vez me ha pasado eso.
Tenes que pedirselo a tu proveedor del hosting que te de permisos sobre esa carpeta en particular.
Saludos
  #7 (permalink)  
Antiguo 04/05/2010, 06:56
 
Fecha de Ingreso: diciembre-2009
Mensajes: 612
Antigüedad: 14 años, 4 meses
Puntos: 16
Respuesta: subir imagen al servidor

function insertar_noticia($con,$titulo,$descripcion,$fecha, $fuente,$imagen_noticia){

Debes poner $_POST, estudiate eso, se debe a que en tu localhost tienes el registers_global on, y en el servidor, logicamente, off
__________________
Tengo una pregunta que a veces me tortura... ¿El loco soy yo o los locos son los demás?
  #8 (permalink)  
Antiguo 04/05/2010, 07:10
 
Fecha de Ingreso: mayo-2008
Mensajes: 76
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: subir imagen al servidor

En la pagina del formulario aunke no lo ponga en el codigo recojo las variables con extract($_POST);

de todos modod voy a probarlo y lo de la escritura el chmod 0777 no funciona asi como lo tengo puesto ? ahi que hacerlo de otro modo?
  #9 (permalink)  
Antiguo 05/05/2010, 01:14
 
Fecha de Ingreso: mayo-2008
Mensajes: 76
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: subir imagen al servidor

martin0341, muchas gracias te llevaste la puja problema de configuracion de permisos por parte del servidor contratado, mil gracias
  #10 (permalink)  
Antiguo 05/05/2010, 01:23
 
Fecha de Ingreso: febrero-2010
Mensajes: 16
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: subir imagen al servidor

Venía dispuesto a preguntar la misma duda, así que el postme ha venido como anillo al dedo. Mi fallo era exactamente el mismo, los permisos...
  #11 (permalink)  
Antiguo 05/05/2010, 02:22
 
Fecha de Ingreso: mayo-2008
Mensajes: 76
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: subir imagen al servidor

Bueno una pregunta como puedo crear carpetas con permisos 777 esto no vale?

mkdir($carpeta,0777);
  #12 (permalink)  
Antiguo 05/05/2010, 03:46
 
Fecha de Ingreso: marzo-2010
Mensajes: 35
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: subir imagen al servidor

Una cosilla al autor del post!

Cambiate a css para maquetar! es mejor que tablas :D
  #13 (permalink)  
Antiguo 05/05/2010, 05:26
 
Fecha de Ingreso: mayo-2008
Mensajes: 76
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: subir imagen al servidor

tienes toda la razon solo que los formularios tengo la constumbre de ponerlos con tablas todo lo demas esta hecho con div
  #14 (permalink)  
Antiguo 05/05/2010, 06:02
Avatar de martin0341  
Fecha de Ingreso: septiembre-2006
Ubicación: Rosario - Santa Fe
Mensajes: 296
Antigüedad: 17 años, 7 meses
Puntos: 8
Respuesta: subir imagen al servidor

Me alegro que hayas solucionado el problema!!

Saludos desde Rosario, Argentina

Etiquetas: subir, servidores
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 10:26.