Foros del Web » Programando para Internet » PHP »

adjuntar archivo

Estas en el tema de adjuntar archivo en el foro de PHP en Foros del Web. Hola a todos estoy tratando de enviar archivos adjuntos en el form tengo <form name="form1" method="post" enctype="multipart/form-data" action="sent_message.php"> Enviar archivo (imagenes, documentos de texto, etc): ...
  #1 (permalink)  
Antiguo 22/11/2007, 04:15
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
adjuntar archivo

Hola a todos

estoy tratando de enviar archivos adjuntos

en el form tengo

<form name="form1" method="post" enctype="multipart/form-data" action="sent_message.php">
Enviar archivo (imagenes, documentos de texto, etc): <input name="userfile" type="file">
</form>

y en sent_message.php

<?php
move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], "/uploaded")
?>


he probado con $_FILES en lugar de $HTTP_POST_FILES y nada

y en la misma raiz donde estan ambos archivos tengo la carpeta: uploaded

No me intereza ninguna comprobacion de tamaño o tipo de archivo y con eso deberia bastar no?

que me esta faltando?

gracias
  #2 (permalink)  
Antiguo 22/11/2007, 04:29
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 6 meses
Puntos: 48
Re: adjuntar archivo

¿Tienes activados las opciones de mostrar los mensajes de error? Creo que no. Activalos siempre durante el desarrollo.

Creo que tu problema es el "/uploaded", el segundo parametro. Con el / al principio le dices que lo guarde en el raiz del disco duro del sistema operativo (c:/ en windows). En los hostings normales no tienes permisos para hacer eso.

Ademas, ese segundo parametro es la ruta y nombre del fichero destino. "uploaded" parece mas el nombre de una carpeta. Si es una carpeta, tu lo que querias hacer era:
Código PHP:
<?php
move_uploaded_file
($_FILES['userfile']['tmp_name'], "uploaded/{$_FILES['userfile']['name']}")
?>
En http://es2.php.net/manual/es/features.file-upload.php tienes un buen ejemplo.
  #3 (permalink)  
Antiguo 22/11/2007, 05:13
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
Re: adjuntar archivo

probado pero no me funciona
Junto con el envio del archivo adjunto envio otros datos a [email protected]
El envio de datos llega bien pero el archivo adjunto no.


este es el codigo real:

en rojo esta lo que tiene que ver con el adjuntar archivo.

form:

<form name="form1" method="post" enctype="multipart/form-data" action="sent_message_cat.php">

<h5>Nom</h5> <input type="text" value="" id="name" name="name"></input>
<h5>Email</h5> <input type="text" value="" id="email" name="email"></input>
<h5>Tel&egrave;fon</h5> <input type="text" value="" name="phone"></input>
<h5>Missatge</h5> <textarea id="message" name="message" cols="40" rows="10"></textarea>
<input type="hidden" value="TRUE" name="SUBMITED">

Enviar archivo (imagenes, documentos de texto, etc): <input name="userfile" type="file"><br/>

<div style="margin:25px 0 15px 120px;">
<a style="color:white;" href="javascript:enviaMensaje('cat')"><img src="bt_send.png" alt="boton enviar"/></a>
</div>
</form>



y en sent_message_cat.php:

<?php
if (isset($_POST['message'])){

$email=$_POST['email'];
$name=$_POST['name'];
$phone=$_POST['phone'];
$content= $name."\n".$email."\n"."\n".$_POST['message'];
mail('[email protected]', 'Simplemente', $content);
move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], "uploaded/{$HTTP_POST_FILES['userfile']['name']}");
$mensaje="Hem rebut el seu missatge. Ens posarem en contacte amb vost&egrave; en les pr&ograve;ximes 24hs (dies laborables)";
$tit_mensaje="Missatge rebut correctament";
$link_contacto="";
}
else{
$tit_mensaje="Notificaci&oacute;";
$link_contacto="<a href='contacto.php'>tornar a Contacte</a>";
$mensaje="Ho sentim. No hem pogut processar l'envio. Per favor torni a la secci&oacute; de Contacte i intentiu de nou.";}
?>
  #4 (permalink)  
Antiguo 22/11/2007, 05:27
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 6 meses
Puntos: 48
Re: adjuntar archivo

¿Lo que quieres es enviar un fichero adjunto en un email? Porque el move_uploaded_file() solo sirve para hacer subir el fichero al servidor web, no tiene nada que ver con envios de email.

Con la funcion mail() si se pueden enviar ficheros adjuntos, pero es bastante complicado. Lo normal es usar una libreria como phpMailer que incluye esa funcion de adjuntar ficheros con una simple funcion.
  #5 (permalink)  
Antiguo 22/11/2007, 05:36
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
Re: adjuntar archivo

en realida no era lo que queria hacer , pero ahora que lo dices seria perfecto para mi caso.
conoces algun ejemplo para hacer esto, para que pueda darme alguna idea. ??

Ya estoy bajando la libreria phpMailer
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 15:07.