Foros del Web » Programando para Internet » PHP »

Subir archivos al server.. Ayuda con una mini duda..

Estas en el tema de Subir archivos al server.. Ayuda con una mini duda.. en el foro de PHP en Foros del Web. Holas a todosssssssssssssssssssssss :P Bueno a lo que vengo.. en mi script necesito agregar una funcion (que no se.. si sera posible) Primero mi formulario ...
  #1 (permalink)  
Antiguo 01/10/2005, 02:10
 
Fecha de Ingreso: mayo-2005
Mensajes: 148
Antigüedad: 18 años, 11 meses
Puntos: 0
Subir archivos al server.. Ayuda con una mini duda..

Holas a todosssssssssssssssssssssss :P

Bueno a lo que vengo.. en mi script necesito agregar una funcion (que no se.. si sera posible)

Primero mi formulario de envio:

Código HTML:
<form action="progreso.php" method="post" enctype="multipart/form-data"> 
    <b>Tu Nombre:</b> 
    <br> 
    <input type="text" name="nombre" size="20" maxlength="100"> 
    <input type="hidden" name="MAX_FILE_SIZE" value="100000"> 
    <br> 
    <br> 
    <b>Archivo a Enviar: </b> 
    <br> 
    <input name="userfile" type="file"> 
    <br> 
    <input type="submit" value="Enviar"> 
</form> 
Luego mi script de accion:

Progreso.php (cuando se ejecuta el boton ENVIAR/SUBIR desde el formulario principal)

Código PHP:
<?  
$nombre 
$_POST["nombre"];
echo 
"Hola " $nombre "<br><br>";

//datos del arhivo 
$nombre_archivo $HTTP_POST_FILES['userfile']['name']; 
$tipo_archivo $HTTP_POST_FILES['userfile']['type']; 
$tamano_archivo $HTTP_POST_FILES['userfile']['size']; 
//compruebo si las características del archivo son las que deseo 
if (!((strpos($tipo_archivo"gif") || strpos($tipo_archivo"zip")) && ($tamano_archivo 100000))) { 
    echo 
"La extensión o el tamaño de los archivos no es correcta. <br><br><table><tr><td><li>Se permiten archivos .gif o .zip<br><li>se permiten archivos de 100 Kb máximo.</td></tr></table>"
}else{ 
    if (
move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], $nombre_archivo)){ 
       echo 
"Tu archivo se ha enviado sin problemas!";
    }else{ 
       echo 
"Ha ocurrido un problema al enviar el archivo. intentado de nuevo mas tarde.";
echo 
"<br><br>";
echo 
"Saludos!"
    } 

?>
Lo que quiero es que el usuario al insertar su NOMBRE en la casilla "Tu Nombre" (variable $nombre) al enviar el formulario.. se cree automaticamente un .txt con el mismo nombre del archivo que haya subido y dentro esten los datos que haya puesto en la casillas de texto, como Nombre.. Descripcion.. etc.. es como cuando uso ese metodo en el resultado (progreso.php) donde ahi juego con la variable $nombre, quisiera tambien poder utilizarla para que aparesca/me lo grabe en un .txt

Ejemplo!!

1) El usuario inserta su nombre: Zuche

2) El usuario decide subir un archivo llamado FICHERO.zip

Al enviar el formulario (si todo va bien..) automaticamente se cree un txt llamado.. FICHERO.txt y dentro aparesca en este caso solo su nombre Tu Nombre: "Zuche"

---

ES POSIBLEEEEEE?? (aviso que de momento sin usar BASE DE DATOS, recien empiezo)

Si es posible, ayudarme a incorporarlo plz.

GRACIAS...
__________________
(8)Esta es la numero uno, que te sigue a todas partes,
siempre con sus estandartes,
y un grito de corazon, RACING CAMPEON
RACING CAMPEON, en el este y el oeste,
en el norte y en el sur, brillara blanca y celeste la academia RACING CLUB y la acade, y la acade... (8)
  #2 (permalink)  
Antiguo 01/10/2005, 02:47
 
Fecha de Ingreso: mayo-2005
Mensajes: 148
Antigüedad: 18 años, 11 meses
Puntos: 0
Aunque pensandolo mejor, se dira.. "Y POR QUE NO USAS UN ENVIO NORMAL DE MAIL CON ARCHIVO ADJUNTO?" (asi obtendrias de quien es, derscripcion, etc.. y a la vez el archivo)

PUES SI, QUE ESO ESTARIA MUY BIEN TAMBIEN! y yo preguntare..

Que script/como hago para enviar archivos adjuntos desde un formulario PHP a correo x??

y me diran.. POR QUE NO USAS EL PHPMAILER??

y yo dire.. CLAROO! ME LO HE BAJADO PERO NO LO ENTIENDO!!

---

Dentro de la carpeta "phpmailer" viene lo siguiente:

docs (carpeta)
lenguage (carpeta)
phpdoc (carpeta)
test (carpeta)
class.smtp.php (archivo)
class.phpmailer.php (archivo)

PERO ALGUIEN ME DICE COMO INSTALARLO O HACERLO FUNCIONAR??

Subi al server lo siguiente:

la carpeta "language", "test" y los dos archivos "class.smtp.php y class.phpmailer.php" lo otro no, porque son manuales supuestamente "docs"

Luego busque donde se encontraria.. el formulario de envio y eso para empezar.. ya que no habia algun index.php o algo asi :P

http://www.misitio.com/phpmailer/class.smtp.php (pero nada) lo mismo con el otro archivo..

Entonces probe asi

http://www.misitio.com/phpmailer/tes...ailer_test.php

Ahi solo me aparece 3 casillas:

"phpmailer Unit Test
By entering a SMTP hostname it will automatically perform tests with SMTP. "

To Address:

Cc Address:

SMTP Hostname

Boton: Run Test

Inserto mi direccion en la primer casilla, le doy al boton enviar test y eso..

Luego aparece esto.

[codigo]
Test results:
test_wordwrap ok
test_low_priority ok
test_multiple_plain_fileattachment ok
test_plain_stringattachment ok
test_quoted_printable ok
test_html ok
test_html_attachment ok
test_embedded_image ok
test_multi_embedded_image ok
test_altbody ok
test_altbody_attachment
Warning: fopen(message.txt): failed to open stream: Permission denied in /home/user/public_html/phpmailer/test/phpmailer_test.php on line 469

Warning: fwrite(): supplied argument is not a valid stream resource in /home/user/public_html/phpmailer/test/phpmailer_test.php on line 470

Warning: fclose(): supplied argument is not a valid stream resource in /home/user/public_html/phpmailer/test/phpmailer_test.php on line 471
ok
test_multiplesend ok
test_smtpkeepalive ok
test_denialofserviceattack ok
test_error FAIL

15 tests run
1 failure.


test_error
(expected/actual)

You must provide at least one recipient email address.
--------
Language string failed to load: provide_address
[/codigo]

Ahi veran unos erroes (WARNING) no se que se debe..

---

Automaticamete me llegan como 4 mails sobre test de phpmailer..

---

Pero al final.. no se como utilizarlo.. donde se encuentra el formulario para enviar adjunto y todo eso.

Alguien qu elo conosca y me guie???

Muchas gracias...
__________________
(8)Esta es la numero uno, que te sigue a todas partes,
siempre con sus estandartes,
y un grito de corazon, RACING CAMPEON
RACING CAMPEON, en el este y el oeste,
en el norte y en el sur, brillara blanca y celeste la academia RACING CLUB y la acade, y la acade... (8)

Última edición por zuche; 01/10/2005 a las 03:00
  #3 (permalink)  
Antiguo 01/10/2005, 18:43
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Podrías preguntar:

Y alguien conoce algo en castellano .. algún tutorial por ahí? y algunos te dirán:

http://www.programacion.com/php/articulo/phpmailer/

Pero ahí debes saber que un archivo adjunto PHP mailer o cualquier cosa que uses va adjuntar tu archivo al e-mail pero que YA esté en el servidor .. así que antes debes subirlo con el código y TU formulario como el ejemplo que pusistes primero ..

Así que no "busques" en PHP Mailer un "formulario" para subir el archivo .. por qué el archivo lo toma del servidor .. que esté ahí por qué en el mismo proceso de generación del e-mail lo subas por tu formulario y proceso PHP general o ya lo tengas por qué lo subes a mano por FTP o por otro médio es lo de menos para PHP Mailer.

El otro detalle a tener en cuenta es que si tu subes el archivo y envias el e-mail con ese archivo, si no necesitas más ese archivo al terminar de enviar el e-mail puedes deshacerte de el (con unlink())

Un saludo,
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 22:30.