Foros del Web » Programando para Internet » PHP »

Problemas de usuarios subiendo archivos via FTP

Estas en el tema de Problemas de usuarios subiendo archivos via FTP en el foro de PHP en Foros del Web. Buenas, estoy intentando subir archivos vía FTP a un servidor, porque lo que pretendo hacer para un sitio web de una iglesia es que el ...
  #1 (permalink)  
Antiguo 16/06/2008, 19:08
 
Fecha de Ingreso: marzo-2007
Ubicación: En El salvador
Mensajes: 78
Antigüedad: 17 años
Puntos: 0
Problemas de usuarios subiendo archivos via FTP

Buenas, estoy intentando subir archivos vía FTP a un servidor, porque lo que pretendo hacer para un sitio web de una iglesia es que el administrador pueda subir archivos en mp3 y luego poder descargarlos, el punto es que mi situación es así:

Primeramente la estructura del directorio del servidor es la siguiente:

/
directorio1/
directorio2/
directorion/
www/
pagina.html
index.html
subirMensaje.html
oirMensaje.html
uploads/

Entonces para subir los archivos, los tengo que subir a la carpeta uploads/, para ello tengo un usuario cuyo directorio raiz es uploads/ , entonces tengo los códigos de las páginas de la siguiente manera:

(subirMensaje.html bueno es para subir los archivos)

Código:
<form method="post" name="subir" action="oirMensaje.php" enctype="multipart/from-data">
  <p><br />
    Seleccione el archivo que desea subir:

    <input name="archivito" type="file" />
    <br />
Digite el nombre que desea que el archivo tenga en el servidor:
<input name="nombreS" type="text" />
<br />

  <center>

<input type="submit" name="Submit" value="Subir archivo" /></center>
</form>
Luego tenemos el archivo oirMensaje.php en el cual se hace la conexion FTP y se sube el archivo:

Código PHP:
<?
define
("Archivo"$HTTP_POST_VARS["nombreS"]); //
define("Ubicacion"$HTTP_POST_VARS["archivito"]);
echo 
'el nombre que puso es ' Archivo '<br><br>';
echo 
'la ubicacion actual es ' Ubicacion '<br><br>';
if (
$conexion ftp_connect("ftp.comunidadcristiana.org.sv",21))
{
echo 
"se conecto<br>";
}

if(
ftp_login($conexion,"usuarioftp","contrasena"))
{
echo 
"se logueo<br>";
}
else
{
echo 
"no se logueo<br>";
}

    if(
ftp_pasv($conexion,true))
    echo 
"se puso en modo pasivo<br>";
    else
    echo 
"no se puso modo pasivo<br>";
  if( 
ftp_put($conexionArchivo,Ubicacion,FTP_BINARY))    
    echo 
"se subio el archivo";
  else
   echo 
"no se subio el archivo";

    
ftp_close($conexion);
?>
Le puse para que fuese imprimiendo con echo si la conexion se abria, si se logueaba correctamente, si se ponia el modo pasivo sin problemas, y si se subia el archivo, y todos funcionan, menos la funcion para subir el archivo. ¿Que podré estar haciendo mal?
  #2 (permalink)  
Antiguo 17/06/2008, 02:45
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 5 meses
Puntos: 48
Respuesta: Problemas de usuarios subiendo archivos via FTP

Explica mejor lo que quieres hacer, poniendo nombre a los servidores. Porque creo que te estas liando. El input file muestra los ficheros del ordenador donde se esta viendo la pagina, y no se si en ese mismo ordenador esta ejecutandose el servidor PHP y desde ahi enviarlo FTP a ftp.comunidadcristiana, o es en comunidadcristiana donde se esta ejecutando el servidor PHP y lo que quieres es que desde cualquier ordenador subir mediante formulario ficheros del ordenador del visitante a ese servidor.
  #3 (permalink)  
Antiguo 17/06/2008, 07:15
 
Fecha de Ingreso: marzo-2007
Ubicación: En El salvador
Mensajes: 78
Antigüedad: 17 años
Puntos: 0
Respuesta: Problemas de usuarios subiendo archivos via FTP

Bueno, disculpas por no haberme explicado bien. En efecto, ftp.comunidadcristiana es un servidor FTP remoto, es de un hosting, como referencia es un hosting adquirido en ***.siteground.com, entonces ahi tambien en el hosting esta alojado el sitio web, entonces yo lo estaba probando en mi casa, es decir ya había subido las paginas php para subir archivos, el archivo local, en sintesis la situación mia es lo segundo que tu dices:

Cita:
o es en comunidadcristiana donde se esta ejecutando el servidor PHP y lo que quieres es que desde cualquier ordenador subir mediante formulario ficheros del ordenador del visitante a ese servidor.
Para ello en el panel de siteground creé una cuenta FTP que es usada por el script php para subir los archivos, el directorio raiz de esta carpeta es una carpeta llamada uploads que esta en el directorio raiz del sitio.

Última edición por 0skar; 17/06/2008 a las 07:17 Razón: Explicar mejor una parte del post
  #4 (permalink)  
Antiguo 18/06/2008, 01:59
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 5 meses
Puntos: 48
Respuesta: Problemas de usuarios subiendo archivos via FTP

Entonces no se puede hacer lo que quieres hacer, al menos como lo haces. PHP se ejecuta en el servidor, no tiene acceso al disco duro de la persona que navega. Es decir, en tu codigo PHP el lado local del FTP es el servidor donde se ejecuta el PHP, tu servidor web, y el remoto, el ftp.comunidadcristiana (que si no me equivoco, son el mismo). Nunca el ordenador de la persona que visita tu web.

La unica forma seria que el visitante de tu pagina web tuviese instalado en su ordenador un servidor FTP, y te diese los datos de acceso y serian los que pondrias en la conexion FTP de tu script PHP.

Asi que la unica forma standard de subir ficheros desde el ordenador del visitante es con el POST UPLOAD http://es.php.net/manual/es/features.file-upload.php
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 04:10.