Foros del Web » Programando para Internet » PHP »

Me Falta Un Detalle En Formulario

Estas en el tema de Me Falta Un Detalle En Formulario en el foro de PHP en Foros del Web. Hola a todos, me he puesto a insistir en querer enviar un archivo junto via email, es decir que el usuario pueda enviar un comprimo, ...
  #1 (permalink)  
Antiguo 02/07/2008, 22:18
Avatar de davincci  
Fecha de Ingreso: enero-2005
Mensajes: 193
Antigüedad: 19 años, 3 meses
Puntos: 0
Me Falta Un Detalle En Formulario

Hola a todos, me he puesto a insistir en querer enviar un archivo junto via email, es decir que el usuario pueda enviar un comprimo, ejectuable o cualquiera. Pero estoy enredado en la parte de recibir el archivo por el metodo post y enviarlo, agradezco a quien me de una ayuda.

PDT: NO QUIERO EL METODO PHPMAILER, es mejor aprender hacerlo manual...creo yo

CASA.HTML

Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<
html xmlns="http://www.w3.org/1999/xhtml">

<
head>

<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<
title>Formulario consignacion de inmueble</title>

<
style type="text/css">

<!--

.
Estilo1 {

    
font-familyEurose;

    
color#0033FF;

}

-->

</
style>

<
script src="Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
</head>



<body>
<table width="50%" border="0">
  <tr>
    <td height="457"><form action="casa.php" method="post" enctype="multipart/form-data" name="form1" id="form1">
      <table class="cuerpo_promociones" cellspacing="0" cellpadding="0" 

            width="491">
        <tbody>
          <tr>
            <td 

                  height="25" colspan="2" valign="top" class="Estilo1">Datos personales </td>
            <td colspan="2" align="right" valign="top" class="Estilo12"><div align="right" class="Estilo1">* 
              
              Obligatorio </div></td>
          </tr>
          <tr>
            <td width="136" height="20" class="Estilo7 Estilo1">Nombre:* </td>
            <td width="144"><input class="formulario" id="nombre" 

name="nombre" /></td>
            <td class="Estilo1" width="65">E-Mail:</td>
            <td width="144"><input class="formulario" id="email" 

              name="email" /></td>
            </tr>
          <tr>
            <td class="Estilo1">Ciudad:</td>
            <td><input class="formulario" id="ciudad" name="ciudad" /></td>
            <td class="Estilo1">Tel&eacute;fono:* </td>
            <td><input class="formulario" id="telefono" 

              name="telefono" /></td>
            </tr>
          <tr>
            <td class="Estilo1">Tipo de consignaci&oacute;n:</td>
            <td><span class="Estilo1">
              <select name="tipo" id="tipo">
                <option value="Arriendo">Arriendo</option>
                <option value="Venta">Venta</option>
                            </select>
            </span></td>
            <td class="Estilo1">&nbsp;</td>
            <td>&nbsp;</td>
          </tr>
        </tbody>
      </table>
      <table border="0">
        <tr class="cuerpo_promociones">
          <td width="132" class="Estilo1">Alcobas</td>
          <td width="55" class="Estilo1"><select name="alcoba" id="alcoba">
            <option value="No">No</option>
            <option value="Si">Si</option>
          </select></td>
          <td class="Estilo1" width="130">Area Bodega:</td>
          <td width="95"><input name="areabodega" 

                              class="formularios" id="areabodega" value="0" size="15" /></td>
        </tr>
        <tr class="cuerpo_promociones">
          <td class="Estilo1">Sala:</td>
          <td class="Estilo1"><select name="sala" id="sala">
            <option value="No">No</option>
            <option value="Si">Si</option>
          </select></td>
          <td class="Estilo1">Area oficina:</td>
          <td><input name="areaoficina" 

                              class="formularios" id="areaoficina" value="0" size="15" /></td>
        </tr>
        <tr class="cuerpo_promociones">
          <td class="Estilo1">Comedor Principal:</td>
          <td class="Estilo1"><select name="comedorp" id="comedorp">
            <option value="No">No</option>
            <option value="Si">Si</option>
          </select></td>
          <td class="Estilo1">Area Local:</td>
          <td><input name="arealocal" 

                              class="formularios" id="arealocal" value="0" size="15" /></td>
        </tr>
        <tr class="cuerpo_promociones">
          <td class="Estilo1">Sal&oacute;n Comedor:</td>
          <td class="Estilo1"><select name="salonc" id="salonc">
            <option value="No">No</option>
            <option value="Si">Si</option>
          </select></td>
          <td class="Estilo1">Area Parqueadero:</td>
          <td><input name="areaparqueadero" 

                              class="formularios" id="areaparqueadero" value="0" size="15" /></td>
        </tr>
        <tr class="cuerpo_promociones">
          <td class="Estilo1">Estudio:</td>
          <td class="Estilo1"><select name="estudio" id="estudio">
            <option value="No">No</option>
            <option value="Si">Si</option>
          </select></td>
          <td class="Estilo1">Altura Puerta:</td>
          <td><input name="alturapuerta" 

                              class="formularios" id="alturapuerta" value="0" size="15" /></td>
        </tr>
        <tr class="cuerpo_promociones">
          <td class="Estilo1">Hall:</td>
          <td class="Estilo1"><select name="hall" id="hall">
            <option value="No">No</option>
            <option value="Si">Si</option>
          </select></td>
          <td class="Estilo1">Resistencia Pisos:</td>
          <td><input name="resistenciapisos" 

                              class="formularios" id="resistenciapisos" value="0" size="15" /></td>
        </tr>
        <tr class="cuerpo_promociones">
          <td class="Estilo1">Ba&ntilde;os:</td>
          <td class="Estilo1"><select name="banos" id="banos">
            <option value="No">No</option>
            <option value="Si">Si</option>
          </select></td>
          <td class="Estilo1">Energ&iacute;a:</td>
          <td><input name="energia" 

                              class="formularios" id="energia" value="0" size="15" /></td>
        </tr>
        <tr class="cuerpo_promociones">
          <td class="Estilo1">Cocina:</td>
          <td class="Estilo1"><select name="cocina" id="cocina">
            <option value="No">No</option>
            <option value="Si">Si</option>
          </select></td>
          <td class="Estilo1">Area Construida:</td>
          <td><input name="areaconstruida" 

                              class="formularios" id="areaconstruida" value="0" size="15" /></td>
        </tr>
      </table>
      <p align="left"><span class="Titular1"><textarea class="formulario" id="caracteristicas" name="caracteristicas" rows="5" cols="60"></textarea>
                    </span></p>
      <p align="left">
        <label>
        <blockquote>
          <label>
          <input type="file" name="archivo" id="archivo" />
          <input type="submit" name="button" id="button" value="Enviar" />
          </label>
  <blockquote>
            <blockquote>
              <blockquote>
                <p>&nbsp;</p>
              </blockquote>
            </blockquote>
          </blockquote>
        </blockquote>
        </label>
      </p>
    </form></td>
  </tr>
</table>
<p align="left">&nbsp;</p>
<p align="left">&nbsp;</p>
</body>

</html> 
CASA.PHP

Código PHP:
<html> 
<head> 
<title>Ventana Secundaria</title> 
<script> 
function cerrarse(){ 
window.close() 

</script>
</head> 

<body>
<p>&nbsp;</p>
<table width="51%" border="0" align="center">
  <tr>
    <td height="121"><form>
      <p>&nbsp;</p>
      <p align="center"><strong>Su mensaje ha sido enviado</strong></p>
      <p align="center">
        <input type=button value="Clic para cerrar la venta" onClick="cerrarse()" />
        </p>
    </form>
    <p></p></td>
  </tr>
</table>
<p>&nbsp;</p>
</body> 
</html> 
<?
//----------------
$nombre=$_POST['nombre'];
$ciudad=$_POST['ciudad'];
$email=$_POST['email'];
$telefono=$_POST['telefono'];
$tipo=$_POST['tipo'];
$alcoba=$_POST['alcoba'];
$sala=$_POST['sala'];
$comedorp=$_POST['comedorp'];
$salonc=$_POST['salonc'];
$estudio=$_POST['estudio'];
$hall=$_POST['hall'];
$banos=$_POST['banos'];
$cocina=$_POST['cocina'];
$areaoficina=$_POST['areaoficina'];
$arealocal=$_POST['arealocal'];
$areabodega=$_POST['areabodega'];
$areaparqueadero=$_POST['areaparqueadero'];
$alturapuerta=$_POST['alturapuerta'];
$resistenciapisos=$_POST['resistenciapisos'];
$energia=$_POST['energia'];
$areaconstruida=$_POST['areaconstruida'];
$caracteristicas=$_POST['caracteristicas'];
$archivo=$_FILES['archivo']['tmp_name'];

$para='[email protected]';

$mensaje='Datos de cliente:

Nombre:'
.$nombre.'
Ciudad:'
.$ciudad.'
Telefono:'
.$telefono.'
Email:'
.$email.'

Inmueble interesado en consignar: Casa

Tipo de Consignacion: '
.$tipo.'

Alcoba: '
.$alcoba.'
Sala:   '
.$sala.'
Comedor Principal: '
.$comedorp.'
Salon comedor: '
.$salonc.'
Estudio: '
.$Estudio.'
Hall:    '
.$hall.'
Banos:   '
.$banos.'
Area de oficina:  '
.$areaoficina.'
Area de local:  '
.$arealocal.'
Area de bodega:  '
.$areabodega.'
Area de parqueadero: '
.$areaparqueadero.'
Altura de puerta:  '
.$alturapuerta.'
Resistencia de pisos :  '
.$resistenciapisos.'

Caracteristicas extras : 

'
.$caracteristicas.'



'
;
$desde='Usuario que remite:';
mail($para,$email,$mensaje,$archivo);

?>
__________________
Mil gracias por sus enseñanzas.

Davincci
  #2 (permalink)  
Antiguo 02/07/2008, 22:54
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: Me Falta Un Detalle En Formulario

Todavia con el tema! :D

Yo aun insisto en generar un zip y enviarlo adjunto :P si lo termino te aviso.

En este caso debes identificar que tipo de archivo es y poner los encabezados correspondientes, recuerda que si es jpg viene con image/jpg y asi con todos los archivos, y dependiendo de esto puedes agregar el mimetype al adjunto del mail tal como lo tenias en el formulario donde agregabas la foto.

Creo que esa es tu duda no?...

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #3 (permalink)  
Antiguo 02/07/2008, 22:58
Avatar de davincci  
Fecha de Ingreso: enero-2005
Mensajes: 193
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Me Falta Un Detalle En Formulario

Gracias marvin, y sigo todavia con el tema ya vez... mira necesito es que este me envie cualquier tipo de archivo, sea un zip, doc, jpg...pero si se puede configurar solo para zip mejor. Es decir la opcion es que el usuario me envie un comprimido en zip. NO NECESITO NADA MAS ME ESTOY VOLVIENDO LOCOOOOOO.gracias
__________________
Mil gracias por sus enseñanzas.

Davincci
  #4 (permalink)  
Antiguo 02/07/2008, 23:11
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: Me Falta Un Detalle En Formulario

Lo que podrias hacer es que al presionar Enviar vaya a una funcion javascript que tome la ruta completa del archivo y verifique que sea .zip
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #5 (permalink)  
Antiguo 02/07/2008, 23:13
Avatar de davincci  
Fecha de Ingreso: enero-2005
Mensajes: 193
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Me Falta Un Detalle En Formulario

sip
puede ser pero la verdad no se como....
__________________
Mil gracias por sus enseñanzas.

Davincci
  #6 (permalink)  
Antiguo 02/07/2008, 23:15
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: Me Falta Un Detalle En Formulario

Ok... dejame hacer un test y te envio algo... wait.
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #7 (permalink)  
Antiguo 02/07/2008, 23:17
Avatar de davincci  
Fecha de Ingreso: enero-2005
Mensajes: 193
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Me Falta Un Detalle En Formulario

jaja gracias marvin...ummm no has pensado utilizar messenger?? como mas rapido no....
__________________
Mil gracias por sus enseñanzas.

Davincci
  #8 (permalink)  
Antiguo 02/07/2008, 23:28
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: Me Falta Un Detalle En Formulario

Aqui ta :P

Código HTML:
<script type="text/javascript">
function checkFile(){
	var str = document.frm.archivo.value;
	var datos = str.split('.');
	var num = datos.length;
	alert(datos[num-1]);
}
</script>
<h1>FORMULARIO</h1>
<form name="frm" action="<?=$_SERVER['PHP_SELF']?>" method="POST" enctype="multipart/form-data">
<p>Para: 
  <input type="text" name="to" value="" /><br />
De: 
<input type="text" name="from" value="" /><br />
Asunto: 
<input type="text" name="subject" value="" /></p>
<p>Mensaje:<br />
<textarea cols="70" rows="20" name="message"></textarea></p>
<p>Imagen: 
  <input type="file" name="archivo" /></p>
<p><input type="button" name="submit" value="Send" onclick="checkFile()" /></p>

</form> 
Na... es mejor por aca por si alguien mas necesita help :D

Fijate que esta en bruto aca... tu lo acomodas... pero con el alert puedes ver la extension :D

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!

Última edición por Marvin; 02/07/2008 a las 23:29 Razón: falto info
  #9 (permalink)  
Antiguo 02/07/2008, 23:30
Avatar de davincci  
Fecha de Ingreso: enero-2005
Mensajes: 193
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Me Falta Un Detalle En Formulario

muchas Gracias Marvin Cualquier Te Grito...pero MaÑana Estoy Como Biberon De Gemelos..mil Y Mil Gracias...un Abrazo...chao
__________________
Mil gracias por sus enseñanzas.

Davincci
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 13:33.