Menú Principal

ayuda con php

Iniciado por Dannysoft, 29 Abril 2007, 05:54 AM

0 Miembros y 1 Visitante están viendo este tema.

Dannysoft

saludos foro, un cliente me ha pedido que mediante un formulario envie ciertos campos a una direccion de correo electronico, el problema es que usa radiobuttons y es la primera vez que trabajo con eso y no se pasar los valores al php que se supone me va a enviar los datos a mi correo, el formulario es el siguiente:


<form id="form1" name="form1" method="post" action="cotizacion_enviar.php">
                    <table width="500" border="0" align="center" cellpadding="0" cellspacing="0">
                 <tr>
                   <td width="250">Persona Natural
                     <label>
                       <input name="radiobutton" type="radio" value="radiobutton" />
                     </label></td>
                   <td width="250">Persona Juridica
                     <label>
                       <input name="radiobutton" type="radio" value="radiobutton" />
                     </label></td>
                 </tr>
                 <tr>
                   <td>&nbsp;</td>
                   <td>&nbsp;</td>
                 </tr>
                 <tr>
                   <td><strong>Datos del Solicitante:</strong></td>
                   <td>&nbsp;</td>
                 </tr>
                 <tr>
                   <td>Fecha:
                     <label></label></td>
                   <td><input name="fecha" type="text" id="fecha" /></td>
                 </tr>
                 <tr>
                   <td>RUC:
                     <label></label>
                   </td>
                   <td><input name="ruc" type="text" id="ruc" /></td>
                 </tr>
                 <tr>
                   <td>Persona Responsable:
                     <label></label></td>
                   <td><input name="personares" type="text" id="personares" /></td>
                 </tr>
                 <tr>
                   <td>Razon Social: </td>
                   <td><label>
                     <input name="razon" type="text" id="razon" />
                   </label></td>
                 </tr>
                 <tr>
                   <td><label>Correo Electronico: </label></td>
                   <td><label>
                     <input name="email" type="text" id="email" />
                   </label></td>
                 </tr>
                 <tr>
                   <td>Ciudad:</td>
                   <td><label>
                     <input name="ciudad" type="text" id="ciudad" />
                   </label></td>
                 </tr>
                 <tr>
                   <td>Pais:</td>
                   <td><label>
                     <input name="pais" type="text" id="pais" />
                   </label></td>
                 </tr>
                 <tr>
                   <td>Telefono:</td>
                   <td><label>
                     <input name="telefono" type="text" id="telefono" />
                   </label></td>
                 </tr>
                 <tr>
                   <td>Fax:</td>
                   <td><label>
                     <input name="fax" type="text" id="fax" />
                   </label></td>
                 </tr>
                 <tr>
                   <td>Nextel:</td>
                   <td><label>
                     <input name="nextel" type="text" id="nextel" />
                   </label></td>
                 </tr>
                 <tr>
                   <td>&nbsp;</td>
                   <td>&nbsp;</td>
                 </tr>
                 <tr>
                   <td><strong>Informes de Articulos: </strong></td>
                   <td>&nbsp;</td>
                 </tr>
                 <tr>
                   <td>&nbsp;</td>
                   <td>&nbsp;</td>
                 </tr>
                 <tr>
                   <td colspan="2"><table width="500" border="0" cellpadding="0" cellspacing="0">
                       <tr>
                         <td rowspan="2" valign="bottom" bgcolor="#CCCCCC"><div align="center"><strong>Cantidad</strong></div>
                             <div align="center"></div></td>
                         <td rowspan="2" valign="bottom" bgcolor="#CCCCCC"><div align="center"><strong>Descripci&oacute;n</strong></div>
                             <div align="center"></div></td>
                         <td colspan="3" bgcolor="#CCCCCC"><div align="center"><strong>Medidas</strong></div>
                             <div align="center"></div>
                           <div align="center"></div></td>
                       </tr>
                       <tr>
                         <td valign="bottom" bgcolor="#CCCCCC"><div align="center">Alto</div></td>
                         <td valign="bottom" bgcolor="#CCCCCC"><div align="center">Ancho</div></td>
                         <td valign="bottom" bgcolor="#CCCCCC"><div align="center">Profundidad</div></td>
                       </tr>
                       <tr>
                         <td width="100"><label>
                             <div align="center">
                               <input name="can1" type="text" id="can1" size="12" />
                             </div>
                           </label></td>
                         <td width="100"><div align="center">
                             <input name="des1" type="text" id="des1" size="12" />
                         </div></td>
                         <td width="100"><div align="center">
                             <input name="alto1" type="text" id="alto1" size="12" />
                         </div></td>
                         <td width="100"><div align="center">
                             <input name="ancho1" type="text" id="ancho1" size="12" />
                         </div></td>
                         <td width="100"><div align="center">
                             <input name="profundidad1" type="text" id="profundidad1" size="12" />
                         </div></td>
                       </tr>
                       <tr>
                         <td><div align="center">
                             <input name="can2" type="text" id="can2" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="des2" type="text" id="des2" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="alto2" type="text" id="alto2" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="ancho2" type="text" id="ancho2" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="profundidad2" type="text" id="profundidad2" size="12" />
                         </div></td>
                       </tr>
                       <tr>
                         <td><div align="center">
                             <input name="can3" type="text" id="can3" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="des3" type="text" id="des3" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="alto3" type="text" id="alto3" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="ancho3" type="text" id="ancho3" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="profundidad3" type="text" id="profundidad3" size="12" />
                         </div></td>
                       </tr>
                       <tr>
                         <td><div align="center">
                             <input name="can4" type="text" id="can4" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="des4" type="text" id="des4" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="alto4" type="text" id="alto4" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="ancho4" type="text" id="ancho4" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="profundidad4" type="text" id="profundidad4" size="12" />
                         </div></td>
                       </tr>
                       <tr>
                         <td>&nbsp;</td>
                         <td>&nbsp;</td>
                         <td>&nbsp;</td>
                         <td>&nbsp;</td>
                         <td>&nbsp;</td>
                       </tr>
                   </table></td>
                 </tr>
                 <tr>
                   <td>&nbsp;</td>
                   <td>&nbsp;</td>
                 </tr>
                 <tr>
                   <td colspan="2"><strong>Nota: </strong>(LGA) </td>
                 </tr>
                 <tr>
                   <td colspan="2">&nbsp;</td>
                 </tr>
                 <tr>
                   <td colspan="2"><label>
                       <div align="center">
                         <input type="submit" name="Submit" value="Enviar Cotización" />
                       </div>
                     </label></td>
                 </tr>
               </table>
           </form>


el php se llama cotizacion_emviar.php


<?php
if(isset($_POST["fecha"]) && isset($_POST["ruc"]) && isset($_POST["empresa"]) && isset($_POST["email"])  && isset($_POST["telefono"])){
    
$fecha date("D-M-y H:i");
$mymail "tuCorreo@tuServidor.com";
$subject "cotizacion desde la pagina web";
$contenido "Fecha: ".$_POST["fecha"]." Escribio :\n";
$contenido .= "RUC: ".$_POST["ruc"]."\n\n";
$contenido .= "Persona Responsable: ".$_POST["personares"]."\n\n";
$contenido .= "Razon Social: ".$_POST["razon"]."\n\n";
$contenido .= "E-mail: ".$_POST["email"]."\n\n";
$contenido .= "Ciudad: ".$_POST["ciudad"]."\n\n";
$contenido .= "Pais: ".$_POST["pais"]."\n\n";
$contenido .= "Telefono: ".$_POST["telefono"]."\n\n";
$contenido .= "Fax: ".$_POST["fax"]."\n\n";
$contenido .= "Nextel: ".$_POST["nextel"]."\n\n";
$contenido .= "Email: ".$_POST["email"]."\n\n";
$contenido .= "el mensaje se escribio el ".$fecha;
$header "From:".$_POST["email"]."\nReply-To:".$_POST["email"]."\n";
$header .= "X-Mailer:PHP/".phpversion()."\n";
$header .= "Mime-Version: 1.0\n";
$header .= "Content-Type: text/plain";
mail($mymail1$subjectutf8_decode($contenido) ,$header);

}
?>



como veran hay muchos campos y me hago bolas al momento de enviar al formualrio. mi pregunta es como puedo enviar todos los datos que aparecen en el formulario a una direccion de correo, gracias por al ayuda que me den..
No hay perfeccion sin esfuerzo...

Red Mx

tu tienes esto

                       <input name="radiobutton" type="radio" value="radiobutton" />
                     </label></td>
                   <td width="250">Persona Juridica
                     <label>
                       <input name="radiobutton" type="radio" value="radiobutton" />
                     </label></td>


y en el php tienes esto

$contenido .= "Persona Responsable: ".$_POST["personares"]."\n\n";

entonces solo cambia en los radios el
name a personares y en value Persona Juridica o Persona Natural

solo el cambio seria en html

y quedaria asi
<form id="form1" name="form1" method="post" action="cotizacion_enviar.php">
                    <table width="500" border="0" align="center" cellpadding="0" cellspacing="0">
                 <tr>
                   <td width="250">Persona Natural
                     <label>
                       <input name="personares" type="radio" value="Persona Natural" />
                     </label></td>
                   <td width="250">Persona Juridica
                     <label>
                       <input name="personares" type="radio" value="Persona Juridica" />
                     </label></td>
                 </tr>
                 <tr>
                   <td>&nbsp;</td>
                   <td>&nbsp;</td>
                 </tr>
                 <tr>
                   <td><strong>Datos del Solicitante:</strong></td>
                   <td>&nbsp;</td>
                 </tr>
                 <tr>
                   <td>Fecha:
                     <label></label></td>
                   <td><input name="fecha" type="text" id="fecha" /></td>
                 </tr>
                 <tr>
                   <td>RUC:
                     <label></label>
                   </td>
                   <td><input name="ruc" type="text" id="ruc" /></td>
                 </tr>
                 <tr>
                   <td>Persona Responsable:
                     <label></label></td>
                   <td><input name="personares" type="text" id="personares" /></td>
                 </tr>
                 <tr>
                   <td>Razon Social: </td>
                   <td><label>
                     <input name="razon" type="text" id="razon" />
                   </label></td>
                 </tr>
                 <tr>
                   <td><label>Correo Electronico: </label></td>
                   <td><label>
                     <input name="email" type="text" id="email" />
                   </label></td>
                 </tr>
                 <tr>
                   <td>Ciudad:</td>
                   <td><label>
                     <input name="ciudad" type="text" id="ciudad" />
                   </label></td>
                 </tr>
                 <tr>
                   <td>Pais:</td>
                   <td><label>
                     <input name="pais" type="text" id="pais" />
                   </label></td>
                 </tr>
                 <tr>
                   <td>Telefono:</td>
                   <td><label>
                     <input name="telefono" type="text" id="telefono" />
                   </label></td>
                 </tr>
                 <tr>
                   <td>Fax:</td>
                   <td><label>
                     <input name="fax" type="text" id="fax" />
                   </label></td>
                 </tr>
                 <tr>
                   <td>Nextel:</td>
                   <td><label>
                     <input name="nextel" type="text" id="nextel" />
                   </label></td>
                 </tr>
                 <tr>
                   <td>&nbsp;</td>
                   <td>&nbsp;</td>
                 </tr>
                 <tr>
                   <td><strong>Informes de Articulos: </strong></td>
                   <td>&nbsp;</td>
                 </tr>
                 <tr>
                   <td>&nbsp;</td>
                   <td>&nbsp;</td>
                 </tr>
                 <tr>
                   <td colspan="2"><table width="500" border="0" cellpadding="0" cellspacing="0">
                       <tr>
                         <td rowspan="2" valign="bottom" bgcolor="#CCCCCC"><div align="center"><strong>Cantidad</strong></div>
                             <div align="center"></div></td>
                         <td rowspan="2" valign="bottom" bgcolor="#CCCCCC"><div align="center"><strong>Descripci&oacute;n</strong></div>
                             <div align="center"></div></td>
                         <td colspan="3" bgcolor="#CCCCCC"><div align="center"><strong>Medidas</strong></div>
                             <div align="center"></div>
                           <div align="center"></div></td>
                       </tr>
                       <tr>
                         <td valign="bottom" bgcolor="#CCCCCC"><div align="center">Alto</div></td>
                         <td valign="bottom" bgcolor="#CCCCCC"><div align="center">Ancho</div></td>
                         <td valign="bottom" bgcolor="#CCCCCC"><div align="center">Profundidad</div></td>
                       </tr>
                       <tr>
                         <td width="100"><label>
                             <div align="center">
                               <input name="can1" type="text" id="can1" size="12" />
                             </div>
                           </label></td>
                         <td width="100"><div align="center">
                             <input name="des1" type="text" id="des1" size="12" />
                         </div></td>
                         <td width="100"><div align="center">
                             <input name="alto1" type="text" id="alto1" size="12" />
                         </div></td>
                         <td width="100"><div align="center">
                             <input name="ancho1" type="text" id="ancho1" size="12" />
                         </div></td>
                         <td width="100"><div align="center">
                             <input name="profundidad1" type="text" id="profundidad1" size="12" />
                         </div></td>
                       </tr>
                       <tr>
                         <td><div align="center">
                             <input name="can2" type="text" id="can2" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="des2" type="text" id="des2" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="alto2" type="text" id="alto2" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="ancho2" type="text" id="ancho2" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="profundidad2" type="text" id="profundidad2" size="12" />
                         </div></td>
                       </tr>
                       <tr>
                         <td><div align="center">
                             <input name="can3" type="text" id="can3" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="des3" type="text" id="des3" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="alto3" type="text" id="alto3" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="ancho3" type="text" id="ancho3" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="profundidad3" type="text" id="profundidad3" size="12" />
                         </div></td>
                       </tr>
                       <tr>
                         <td><div align="center">
                             <input name="can4" type="text" id="can4" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="des4" type="text" id="des4" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="alto4" type="text" id="alto4" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="ancho4" type="text" id="ancho4" size="12" />
                         </div></td>
                         <td><div align="center">
                             <input name="profundidad4" type="text" id="profundidad4" size="12" />
                         </div></td>
                       </tr>
                       <tr>
                         <td>&nbsp;</td>
                         <td>&nbsp;</td>
                         <td>&nbsp;</td>
                         <td>&nbsp;</td>
                         <td>&nbsp;</td>
                       </tr>
                   </table></td>
                 </tr>
                 <tr>
                   <td>&nbsp;</td>
                   <td>&nbsp;</td>
                 </tr>
                 <tr>
                   <td colspan="2"><strong>Nota: </strong>La presente cotizaci&oacute;n es referencial y solo sera oficial cuando IRUNNAP EXPORT PERU corrobore la veracidad de los datos otorgados por el solicitante en la presente cotizacion y formalizando este acto con la suscripci&oacute;n del formato (LGA) </td>
                 </tr>
                 <tr>
                   <td colspan="2">&nbsp;</td>
                 </tr>
                 <tr>
                   <td colspan="2"><label>
                       <div align="center">
                         <input type="submit" name="Submit" value="Enviar Cotización" />
                       </div>
                     </label></td>
                 </tr>
               </table>
           </form>



saludos
Desarrollar Malware Es Causa De Cancer...

Dannysoft

Gracias Red Mx por tu ayuda tenias razon siguiendo el ejemplo que me diste pude hacer funcionar el formulario al fin...
No hay perfeccion sin esfuerzo...

Dannysoft

bueno comodecia arriba ya hice todo, pero ahora me dicen que tambien debo colocar una opcion para colocar un archivo adjunto osea junto con los datos enviados, :-( tambien debe haber uno para adjuntar una imagen, mi pregunta es como hago eso en php?, gracias por la ayuda que em den
No hay perfeccion sin esfuerzo...

дٳŦ٭

Cita de: Dannysoft en  1 Mayo 2007, 20:42 PM
bueno comodecia arriba ya hice todo, pero ahora me dicen que tambien debo colocar una opcion para colocar un archivo adjunto osea junto con los datos enviados, :-( tambien debe haber uno para adjuntar una imagen, mi pregunta es como hago eso en php?, gracias por la ayuda que em den

Para usar attachment te recomiendo usar phpmailer, en el post de POO tienes una referencia.


Con sangre andaluza :)


Dannysoft

#5
aver probe con el ejemplo que hay en la pagina que me dijste, le cambie los smtp a los mios y el resto de cambios, subi la carpeta include tambien a mi severpero no me llego nada, mi pregunta es que estoy haciendo mal con el phpmailer??
No hay perfeccion sin esfuerzo...

Ertai

Cita de: Dannysoft en  2 Mayo 2007, 20:56 PM
aver probe con el ejemplo que hay en la pagina que me dijste, le cambie los smtp a los mios y el resto de cambios, subi la carpeta include tambien a mi severpero no me llego nada, mi pregunta es que estoy haciendo mal con el phpmailer??

Con esa información poco podemos hacer. Pon los errores, o el comportamiento del script.
Si la felicidad se comprara, entonces el dinero sería noble.


void rotar_by_ref(int& a, int& b) {
   /* Quien dijo que no se podia sin una variable temporal? */
   *a = *a ^ *b;
   *b = *a ^ *b;
   *a = *a ^ *b;
}

Dannysoft

aver bueno como dije anteriormente busque en la sección POO de el foro ahi habia una direccion que era esta:

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

el codigo que ponian ahi para adjuntar archivos era este:


<?
   //Es necesario que al menos haya una dirección de destino
   $error="";

   if ($enviar) {
      if ((!$email1) && (!$email2)) {
$error.="Debe indicar al menos una dirección de destino";
      }
   }

   if ($enviar && !$error) {

      //creamos un array que estará formado por las direcciones de destino
      if ($email1) {
$direcciones["direccion1"]=$email1;
      }
      if ($email2) {
$direcciones["direccion2"]=$email2;
      }


      //pasamos a enviar el correo

      // primero hay que incluir la clase phpmailer para poder instanciar
      //un objeto de la misma
      require "includes/class.phpmailer.php";

      //instanciamos un objeto de la clase phpmailer al que llamamos
      //por ejemplo mail
      $mail = new phpmailer();

      //Definimos las propiedades y llamamos a los métodos
      //correspondientes del objeto mail

      //Con PluginDir le indicamos a la clase phpmailer donde se
      //encuentra la clase smtp que como he comentado al principio de
      //este ejemplo va a estar en el subdirectorio includes
      $mail->PluginDir = "includes/";

      //Con la propiedad Mailer le indicamos que vamos a usar un
      //servidor smtp                           
      $mail->Mailer = "smtp";

      //Asignamos a Host el nombre de nuestro servidor smtp
      $mail->Host = "smtp.hotpop.com";
     
      //Le indicamos que el servidor smtp requiere autenticación
      $mail->SMTPAuth = true;

      //Le decimos cual es nuestro nombre de usuario y password
      $mail->Username = "micuentaf@HotPOP.com";
      $mail->Password = "mipassword";
     
      //Indicamos cual es nuestra dirección de correo y el nombre que
      //queremos que vea el usuario que lee nuestro correo
      $mail->From = "micuenta@HotPOP.com";

      $mail->FromName = "Eduardo Garcia";

      //Asignamos asunto y cuerpo del mensaje
      //El cuerpo del mensaje lo ponemos en formato html, haciendo
      //que se vea en negrita
      $mail->Subject = "Prueba de phpmailer";
      $mail->Body = "<b>Mensaje de prueba mandado con phpmailer  en formato html</b>";

      //Definimos AltBody por si el destinatario del correo no admite
      //email con formato html
      $mail->AltBody ="Mensaje de prueba mandado con phpmailer en formato texto";

      //el valor por defecto 10 de Timeout es un poco escaso dado que voy a usar
      //una cuenta gratuita y voy a usar attachments, por tanto lo pongo a 120 
      $mail->Timeout=120;

      //Indicamos el fichero a adjuntar si el usuario seleccionó uno en el formulario
      if ($achivo !="none") {
$mail->AddAttachment($archivo,$archivo_name);
      }

      //Indicamos cuales son las direcciones de destino del correo y enviamos
      //los mensajes
      reset($direcciones);
      while (list($clave, $valor)=each($direcciones)) {
$mail->AddAddress($valor);

//se envia el mensaje, si no ha habido problemas la variable $success
//tendra el valor true
$exito = $mail->Send();

//Si el mensaje no ha podido ser enviado se realizaran 4 intentos mas
//como mucho para intentar enviar el mensaje, cada intento se hara 5 s
//segundos despues del anterior, para ello se usa la funcion sleep
$intentos=1;
    while((!$exito)&&($intentos<5)&&($mail->ErrorInfo!="SMTP Error: Data not accepted")){
   sleep(5);
         //echo $mail->ErrorInfo;
         $exito = $mail->Send();
         $intentos=$intentos+1;
    }

//La clase phpmailer tiene un pequeño bug y es que cuando envia un mail con
//attachment la variable ErrorInfo adquiere el valor Data not accepted, dicho
//valor no debe confundirnos ya que el mensaje ha sido enviado correctamente
if ($mail->ErrorInfo=="SMTP Error: Data not accepted") {
   $exito=true;
        }

if(!$exito)
{
   echo "Problemas enviando correo electrónico a ".$valor;
   echo "<br/>".$mail->ErrorInfo;
}
else
{
   //Mostramos un mensaje indicando las direccion de
   //destino y fichero  adjunto enviado en el mensaje
   $mensaje="<p>Has enviado un mensaje a:<br/>";
   $mensaje.=$valor." ";
   if ($archivo !="none") {
$mensaje.="Con un fichero adjunto llamado ".$archivo_name;
   }
   $mensaje.="</p>";
         echo $mensaje;


}
// Borro las direcciones de destino establecidas anteriormente
    $mail->ClearAddresses();

}
echo "<a href='$PHP_SELF'> VOLVER AL FORMULARIO</a>";
   }
   else {
   ?>

   <HTML>
   <BODY>
   <? If ($error) echo "<font color='red'>$error</font>";?>
   <FORM ENCTYPE="multipart/form-data" METHOD="post" ACTION="<?=$PHP_SELF?>">
   <TABLE BORDER=0 ALIGN="CENTER">
    <TR>
      <TD>Direccion de destino1:</TD>
      <TD><INPUT TYPE="text" NAME="email1" MAXLENGTH="30" SIZE="35"></TD>
    </TR>
      <TD>Direccion de destino2:</TD>
      <TD><INPUT TYPE="text" NAME="email2" MAXLENGTH="35" SIZE="35"></TD>
    </TR>
      <TD>Fichero adjunto:</TD>
      <input type="hidden" name="MAX_FILE_SIZE" value="307200">
      <TD><INPUT TYPE="file" NAME="archivo" SIZE="35"></TD>
    </TR>
    <TR>
      <TD COLSPAN="2" ALIGN="CENTER"><INPUT TYPE="submit" VALUE="Enviar" name="enviar"></TD>
    </TR>
    </TABLE>
   </FORM>
   </BODY>
   </HTML>
   <?
   }
?>


obiamente cambie los smpt por los mios y el resto de cosas tambien subi a mi server la carpeta include que esta con el ejemplo que esta ahi pero no funciona mi pregunta es a que se debe esto??
No hay perfeccion sin esfuerzo...