Foros del Web » Programando para Internet » PHP »

Subir al servidor mediante form

Estas en el tema de Subir al servidor mediante form en el foro de PHP en Foros del Web. Hola!! Necesito que mis clientes puedan subir imágenes al servidor. Pero obligatoriamente debe ser por move_uploaded_file, ya que en miarroba(mi hosting), no está disponible la ...
  #1 (permalink)  
Antiguo 28/05/2008, 07:25
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Pregunta Subir al servidor mediante form

Hola!!

Necesito que mis clientes puedan subir imágenes al servidor. Pero obligatoriamente debe ser por move_uploaded_file, ya que en miarroba(mi hosting), no está disponible la función copy.

Yo uso esto, pero no funciona.

Código PHP:
<?php

if (isset($_FILES['archivo'])){
$destino './ficheros/'
if(!
move_uploaded_file($_FILES['archivo']['tmp_name'], $destino)) {
echo 
"error al copiar el archivo";
} else {
echo 
"archivo subido con exito";
}
} else {
?>
<form method="post" name="formulario" enctype="multipart/form-data">
<input name="archivo" type="file">
<input type='submit' name='enviar'>
</form>
</body></html>
<?php
}

?>
¿Pueden ayudarme?
  #2 (permalink)  
Antiguo 28/05/2008, 07:54
Avatar de ACX_POISON  
Fecha de Ingreso: abril-2008
Ubicación: Talca-Chile
Mensajes: 750
Antigüedad: 16 años
Puntos: 7
Respuesta: Subir al servidor mediante form

que error te muestra
  #3 (permalink)  
Antiguo 28/05/2008, 07:55
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
Respuesta: Subir al servidor mediante form

Saludos..


Piendo que el problema debe estar en la variable destino. Dale la ubicacion completa donde quieres guardar la imagen . Si algo prueba y lo comentas.

Hasta Pronto
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #4 (permalink)  
Antiguo 28/05/2008, 07:55
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Respuesta: Subir al servidor mediante form

error al copiar el archivo.
  #5 (permalink)  
Antiguo 28/05/2008, 07:57
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Respuesta: Subir al servidor mediante form

Cita:
Iniciado por Nano_ Ver Mensaje
Saludos..


Piendo que el problema debe estar en la variable destino. Dale la ubicacion completa donde quieres guardar la imagen . Si algo prueba y lo comentas.

Hasta Pronto
Entonces que pongo, esto?

Código:
"http://061294.webcindario.com/ficheros/"
me muestra otra vez: error al copiar el archivo.

Última edición por yonolose; 28/05/2008 a las 08:02
  #6 (permalink)  
Antiguo 28/05/2008, 08:12
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
Respuesta: Subir al servidor mediante form

SAludos.

Debes es colocar tu ubicacion de tu carpeta desde la raiz:

Código PHP:
Por ejemplo
$file
="/home/x-user/public_html/uploads/images/"
o
$file 
=$_SERVER['DOCUMENT_ROOT']."/uploads/images/"
Hasta Pronto!!
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #7 (permalink)  
Antiguo 28/05/2008, 08:13
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Respuesta: Subir al servidor mediante form

[QUOTE=yonolose;2423366]Hola!!

.................................................. ..........................
$destino = './ficheros/';
if(!move_uploaded_file($_FILES['archivo']['tmp_name'], $destino)) {
echo "error al copiar el archivo";
} else {
.................................................. .......................

Esto es una parte del script que uso, verán que el error que me sale es lo que está en rojo.
  #8 (permalink)  
Antiguo 28/05/2008, 08:17
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Respuesta: Subir al servidor mediante form

Cita:
Iniciado por Nano_ Ver Mensaje
SAludos.

Debes es colocar tu ubicacion de tu carpeta desde la raiz:

Código PHP:
Por ejemplo
$file
="/home/x-user/public_html/uploads/images/"
o
$file 
=$_SERVER['DOCUMENT_ROOT']."/uploads/images/"
Hasta Pronto!!
Bueno, entonces sería correcto esto:

"/ficheros/", ya tengo la página en la raíz del sitio, y la carpeta ficheros también.
Es lo que tenía al principio, pero me sale el error.

he oído algo sobre permiso 777, pero no se lo que es.

Última edición por yonolose; 28/05/2008 a las 08:25
  #9 (permalink)  
Antiguo 28/05/2008, 08:38
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
Respuesta: Subir al servidor mediante form

SAludos.

Los permisos son los accesos que tu le das a tu carpeta ya sea para lectura, escritura o ejecucion. Si dejas los permisos con 777 entonces tu carpeta podra realizar estas tres tareas. Para realizar esta modificacion ingresa por shell a tu servidor y ejecuta el comando:

Cita:
chmod 777 /fichero

Hasta Pronto
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #10 (permalink)  
Antiguo 28/05/2008, 08:43
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Respuesta: Subir al servidor mediante form

Cita:
Iniciado por Nano_ Ver Mensaje
SAludos.

Los permisos son los accesos que tu le das a tu carpeta ya sea para lectura, escritura o ejecucion. Si dejas los permisos con 777 entonces tu carpeta podra realizar estas tres tareas. Para realizar esta modificacion ingresa por shell a tu servidor y ejecuta el comando:




Hasta Pronto
QUÉ ES ESTO?

puede hacerse de otro modo?

con php?
  #11 (permalink)  
Antiguo 28/05/2008, 08:55
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 2 meses
Puntos: 96
Respuesta: Subir al servidor mediante form

Saludos

QUÉ ES ESTO?

El modo shell se podria comparar con el modo MS-DOS de windows pero en este caso para linux que tiene la utilidad de ejecutar comandos en linea.

con php?

utilizando la funcion shell_exec

Hasta pronto!
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #12 (permalink)  
Antiguo 28/05/2008, 08:55
Avatar de lucasan
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: Cali - Colombia
Mensajes: 1.144
Antigüedad: 16 años, 10 meses
Puntos: 59
Respuesta: Subir al servidor mediante form

Si, puedes hacerlo por el ftp, por donde subes tus archivos, das click derecho a la carpeta que quieres darle el permiso y ahi le das permisos (por ahí está la opción, búscala).
__________________
Plan Original Desarrollo Web
~$>sudo apt-get install -f
"Asi debería arreglarse todo en la vida"
  #13 (permalink)  
Antiguo 28/05/2008, 08:58
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
De acuerdo Respuesta: Subir al servidor mediante form

shell_exec

Gracias, voy a buscar información.

En cuanto a botón derecho: En m@ por lo menos no es así.
  #14 (permalink)  
Antiguo 28/05/2008, 09:02
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Subir al servidor mediante form

No es necesario usar ftp o shell, puedes usar chmod desde PHP, por otro lado el segundo parámetro de move_uploaded_file es la ruta completa CON el nombre del archivo a subir, por eso es que te marca error:
Código PHP:
<?php

if (isset($_FILES['archivo'])){
$destino './ficheros/' $_FILES['archivo']['name']; 
if(!
move_uploaded_file($_FILES['archivo']['tmp_name'], $destino)) {
echo 
"error al copiar el archivo";
} else {
echo 
"archivo subido con exito";
}
} else {
?>
<form method="post" name="formulario" enctype="multipart/form-data">
<input name="archivo" type="file">
<input type='submit' name='enviar'>
</form>
</body></html>
<?php
}

?>
Saludos.
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 05:50.