Ver Mensaje Individual
  #2 (permalink)  
Antiguo 21/03/2010, 00:56
Megcapkill
 
Fecha de Ingreso: abril-2007
Ubicación: Tandil, Bs As, Argentina
Mensajes: 106
Antigüedad: 17 años, 7 meses
Puntos: 2
Respuesta: ayuda con formulario y envio de archivos adjuntos

Hola.. bueno para empezar vamos desde tu ultima pregunta isset es una funcion que te permite (tal y como su nombre indica) preguntar si una variable tiene o no un valor asignado. Sale del ingles "is set" (esta seteado o esta asignado).

Código PHP:
<?
if (!$HTTP_POST_VARS){
?>
Código HTML:
<form id="order" class="order-form" action="orderS.php" method="post">
...
<input id="boton" type="submit" name="enviar"  value="Enviar"/> 
Código PHP:
<?php 
}else{
    
/*
     * Permite enviar y/o subir múltiples archivos, usando PHP, javascript y PHP Mailer para  el envío de mails
     * Autor: Alexander Concha Abarca <alex[@]buayacorp.com>
     * http://www.buayacorp.com/
     * 
     * Este script está bajo licencia de Creative Commons 
     * http://creativecommons.org/licenses/by/2.0/
     */
    // Para el envío de mails
    
include_once('class.phpmailer.php');
   
        
extract($_POST);
        
$mail = new phpmailer (); # Crea una instancia
        
$mail -> From $from;
        
$mail -> FromName "frm"# Puede obtenerse del formulario, por facilidad se hace de esta manera
        
$mail -> AddAddress ($to);
        
$mail -> Subject $sbj;
        
$mail -> Body $msg;
        
$mail -> IsHTML (true);
        
$archivos '';
        
$msg "Mensaje Enviado";
    
$msg .= "Nombre: " $HTTP_POST_VARS["name"] . "\n";
    
$msg.= "Dirección: " $HTTP_POST_VARS["direccion"] . "\n";
    
$msg.= "Telefono: " $HTTP_POST_VARS["phone"] . "\n";
    
$msg.= "Email: " $HTTP_POST_VARS["email"] . "\n";
    
$msg.= "Comentarios: " $HTTP_POST_VARS["comments"] . "\n";
    
$msg.= "URL: " $HTTP_POST_VARS["link"] . "\n";
    
$msg.= "Páginas: " $HTTP_POST_VARS["pages"] . "\n";  
    
$msg.= "Días: " $HTTP_POST_VARS["days"] . "\n";
    
$msg.= "Entregar como: " $HTTP_POST_VARS["template_type"] . "\n";    
    
$msg.= "comentarios: " $HTTP_POST_VARS["cd_commented"] . "\n"
    
$msg.= "Libreria preferida: " $HTTP_POST_VARS["cd_javascript_framework"] . "\n";  
    
$msg.= "scripts del lado del servidor: " $HTTP_POST_VARS["cd_ssi"] . "\n";
        
           if (isset (
$_FILES["archivos"])) { # Si es que se subió algún archivo
            
$msg .= "<ul>";
            foreach (
$_FILES["archivos"]["error"] as $key => $error) { # Iterar sobre la colección de archivos
                
if ($error == UPLOAD_ERR_OK) { // Si no hay error
                    
$tmp_name $_FILES["archivos"]["tmp_name"][$key];
                    
$name $_FILES["archivos"]["name"][$key];
                    
$msg .= "<li>$name</li>";
                    
$name uniqid('bc') . '_' $name# Generar un nombre único para el archivo
                    
$mail -> AddAttachment ($tmp_name$name); # Añade el archivo adjunto
                    /*
                    Si se van a guardar los archivos en un directorio, deberían descomentarse
                    las siguientes líneas, si se van a guardar los nombres 
                    de los archivos en una base de datos, aquí debería realizarse algo...                    
                       
                    move_uploaded_file($tmp_name, "ruta/directorio/$name"); # Guardar el archivo en una ubicación, debe tener los permisos necesarios
                    */
                
#if
               
# foreach
            
$msg .= '</ul>';
        } 
# if
        
if (!$mail -> Send ()){
            
$msg "No se pudo enviar el email";
        }

    
//doy las gracias por el envío
    
echo "Gracias por rellenar el formulario. Se ha enviado correctamente.";
    
    echo 
'<META HTTP-EQUIV="Refresh" CONTENT="3"; URL="http://www.estudiojamba.com.ar/MARKUP/orderS.php">';
}
?>
Mmm no me tengo mucha fe con esto jajajaja!!! Pero mas vale intentarlo, no xD! Suerte con esto :D