Foros del Web » Programando para Internet » PHP »

Seleccion y envio a mail

Estas en el tema de Seleccion y envio a mail en el foro de PHP en Foros del Web. Hola e logrado subir mis archivos a una base de datos gracias a ustedes e ido aprendiendo php lo que necesito si es que pueden ...
  #1 (permalink)  
Antiguo 14/06/2011, 10:00
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Seleccion y envio a mail

Hola e logrado subir mis archivos a una base de datos gracias a ustedes e ido aprendiendo php lo que necesito si es que pueden ayudarme u orientarme es ver esos archivos y seleccionar los que necesito para enviarlos por mail les explico mejor

este es mi formulario de consulta
Código HTML:
<html>
<body>
<FORM enctype="multipart/form-data" method="post" action="insertar.php">
<SELECT class="texto" name="empresa"> 
<OPTION value="">Seleccione Empresa</OPTION> 
<OPTION value="AGAPPSI">AGAPPSI</OPTION> 
<OPTION value="MAGNETO">MAGNETO</OPTION> 
<OPTION value="ALUMITEX">ALUMITEX</OPTION></SELECT>
<INPUT type="submit" name="submit" value="Consultar">
</FORM>
</body>
</html> 
de aqui paso a buscar en la tabla

Código PHP:
<?php
$empresa
$_POST['empresa'];

$conexion mysql_connect("localhost","server1","amylia1979") or die("No se pudo realizar la conexion con el servidor.");
mysql_select_db("almacenar",$conexion) or die("No se puede seleccionar BD");


de aqui no se que hacer  para ponerlos en checkbox y enviarlos a un mail vi esto no se si funciona pero no veo la consulta a la tabla quiero algo parecido

<?php
    $dir
=opendir("ruta");
    while(
$archivo=readdir($dir))
    {
?>
<input type="checkbox" name="archivo[]" value="<?php echo $archivo;?>">
<label><?php echo $archivo;?></label>
<?php
    
}
?>
se los agredeceria si me ayudan
  #2 (permalink)  
Antiguo 14/06/2011, 10:27
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 2 meses
Puntos: 155
Respuesta: Seleccion y envio a mail

ya no necesitarias meterlos en html nuevamente , ya estan en tu server , ahora el tema es mas de como mandar un mail con atachments

http://www.forosdelweb.com/f18/duda-...9/#post3889326
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #3 (permalink)  
Antiguo 14/06/2011, 10:33
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

Cita:
Iniciado por mogurbon Ver Mensaje
ya no necesitarias meterlos en html nuevamente , ya estan en tu server , ahora el tema es mas de como mandar un mail con atachments

http://www.forosdelweb.com/f18/duda-...9/#post3889326
si lo tengo que mandar a un html te explico necesito que de ese select que envio me apareceran los archivos que corresponde ayi con un checkbox selecciono los archivos que necesito y de ayi lo mando a un rar y luego a outlook se puede hacer eso
  #4 (permalink)  
Antiguo 14/06/2011, 10:40
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 2 meses
Puntos: 155
Respuesta: Seleccion y envio a mail

Checa el archivo en si meterlo tal cual como en el campo tipo file de html ya no es posible , si como dices es un checkbox, con eso obtendrias el nombre del archivo que previamente ya subiste a tu servidor , ahora , estando en el servidor dicho archivo solo que la version web de outlook pudiera adjuntarlo , pero normalmente outlook es un cliente de correo , osea que esta en una maquina local , por eso digo si ya subiste el archivo , para que bajarlo de nuevo? mejor mandarlo directo



archivo(en el server) <----------------->html y outlook(en la maquina local)
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #5 (permalink)  
Antiguo 14/06/2011, 10:47
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

es que mira esta pagina suben archivos de diferentes puntos y de ayi otros consultan y hacen los envios por su cliente outlook ejejejejejej
  #6 (permalink)  
Antiguo 14/06/2011, 10:55
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 2 meses
Puntos: 155
Respuesta: Seleccion y envio a mail

Cita:
Iniciado por CaballeroAries Ver Mensaje
es que mira esta pagina suben archivos de diferentes puntos y de ayi otros consultan y hacen los envios por su cliente outlook ejejejejejej


jajaja no we tons deplano nomas no capeo bien que quieres hacer
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #7 (permalink)  
Antiguo 14/06/2011, 11:20
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

Cita:
Iniciado por mogurbon Ver Mensaje
jajaja no we tons deplano nomas no capeo bien que quieres hacer
mira amigo mio lo que debo hacer es esto poner donde los empleados suban archivos de trabajo con id referenciados a una cuenta de ayi el area de cobranza
abre la cuenta por medio de un selec y le tiene que desplegar que archivos se encuentran de esa cuenta de ayi los selecciona los que necesita y de ayi lo envian por correo al cobrador
  #8 (permalink)  
Antiguo 14/06/2011, 11:58
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

e hecho a ver si esta bien
Código PHP:
<?php
$empresa
$_POST['empresa'];

$conexion mysql_connect("localhost","server1","amylia1979") or die("No se pudo realizar la conexion con el servidor.");
mysql_select_db("almacenar",$conexion) or die("No se puede seleccionar BD");
$resultado mysql_query("SELECT * FROM archivos WHERE empresa LIKE '$empresa' ORDER BY archivo_nombre"$conexion); 
?>
<table>
<?
while ($vector=mysql_fecth_assoc($resultado)) {
$vector['archivo_nombre']; 
// $vector['nombre'] 
?>
<tr>
<td>
<input type="check" name="chk_<?=$vector['archivo_nombre']?>" id="chk_<?=$vector['archivo_nombre']?>" />
<input type="radio" name="rad_codigo" id="rad_codigo" value="<?=$vector['codigo']?>" />
</td>
<td>
<?=$vector['archivo_nombre']?>
</td>
</tr>
<? ?>
</table>
  #9 (permalink)  
Antiguo 14/06/2011, 12:36
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Seleccion y envio a mail

lo que no entiendo es por que dices que tienes los archivos en la base de datos si veo que quieres hacer readdir() XD

bueno el ciclo debe quedarte algo así, fíjate que en vez de archivo[] pondré el nombre del archivo, de esta manera sabrás cual es despues:

$dir=opendir("ruta");
while($archivo=readdir($dir)){
if($archivo!="." and $archivo!=".."){
?>
<input type="checkbox" name="$archivo" value="1">
<label><?php echo $archivo;?></label>
<?php
}
}?>

he agregado un if() para que no muestre la carpeta "." y ".."

en la página donde recibes esa info haces el mismo ciclo, esta vez comparando si se han enviado esos POST:

$dir=opendir("ruta");
while($archivo=readdir($dir)){
if($_POST[$archivo]){ //si se marcó el checkbox de este archivo
//se adjunta
}
}
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #10 (permalink)  
Antiguo 14/06/2011, 12:51
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

es que estan administrado en una base de datos no en una carpeta por eso amigo jejeje
  #11 (permalink)  
Antiguo 14/06/2011, 12:57
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Seleccion y envio a mail

ah ok, entonces solo cambia el código para que siga el ciclo de los registros

<?php
$MQ=mysql_query("SELECT * FROM tabla");
while($MFA=mysql_fetch_array($MQ)){
$archivo=$MFA['archivo'];
?>
<input type="checkbox" name="$archivo" value="1">
<label><?php echo $archivo;?></label>
<?php
}?>
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #12 (permalink)  
Antiguo 14/06/2011, 13:18
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

( ! ) Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\wamp\www\ArchivosC\consutla2.php on line 7
Call Stack
# Time Memory Function Location
1 0.0004 677672 {main}( ) ..\consutla2.php:0
2 1.0097 684768 mysql_fetch_array ( ) ..\consutla2.php:7


me sale este error aqui esta el codigo como tu lo hiciste con sus modificaciones para mi tabla
Código PHP:
<?php
$empresa
$_POST['empresa'];

$conexion mysql_connect("localhost","server1","amylia1979") or die("No se pudo realizar la conexion con el servidor.");
mysql_select_db("almacenar",$conexion) or die("No se puede seleccionar BD");
$MQ=mysql_query("SELECT * FROM archivos WHERE empresa='$empresa', $conexion");
while(
$MFA=mysql_fetch_array($MQ)){
$archivo=$MFA['archivo_nombre'];
?>
<input type="checkbox" name="$archivo" value="1">
<label><?php echo $archivo;?></label>
<?php
}?>
  #13 (permalink)  
Antiguo 14/06/2011, 13:27
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Seleccion y envio a mail

debes cerrar las comillas cuando terminas la consulta:

Código PHP:
Ver original
  1. $MQ=mysql_query("SELECT * FROM archivos WHERE empresa='$empresa'", $conexion);

ah! y ahora que me fijo, me falto un tag de php:

<input type="checkbox" name="<?php echo $archivo;?>" value="1">
<label><?php echo $archivo;?></label>
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #14 (permalink)  
Antiguo 14/06/2011, 13:31
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

Gracias amigo ya quedo asi como tu me lo diste ahora seguire con el siguiente paso.

Última edición por CaballeroAries; 14/06/2011 a las 14:22
  #15 (permalink)  
Antiguo 14/06/2011, 14:23
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

amigo ahora estos seleccionado como los puedo enviara a un correo electronico
  #16 (permalink)  
Antiguo 14/06/2011, 14:45
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Seleccion y envio a mail

yo usaría PHPMailer, es mas fácil, descargala y agregala a tu sistema, así podrás enviar tan facilmente como:


<?php
$MQ=mysql_query("SELECT * FROM archivos WHERE empresa='$empresa'", $conexion);
while($MFA=mysql_fetch_array($MQ)){
$archivo=$MFA['archivo_nombre'];
if($_POST[$archivo]) $mail->AddAttachment($archivo);
}?>
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #17 (permalink)  
Antiguo 14/06/2011, 16:18
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

amigo y se podra hacer un zip con estos archivos para descargarlo en la maquina que lo este trabajando
  #18 (permalink)  
Antiguo 14/06/2011, 16:39
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Seleccion y envio a mail

hacer un zip y enviarlo por mail?

si se puede y PHP convenientemente trae un montón de funciones para hacerlo:

http://php.net/manual/en/book.zip.php
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #19 (permalink)  
Antiguo 14/06/2011, 16:52
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Seleccion y envio a mail

Código PHP:
<?php
$zip 
= new ZipArchive;
$zip->open("mi_zip.zip"); //crear nuevo zip

$MQ=mysql_query("SELECT * FROM archivos WHERE empresa='$empresa'"$conexion);
while(
$MFA=mysql_fetch_array($MQ)){
$archivo=$MFA['archivo_nombre']; 
if(
$_POST[$archivo]) $zip->addFile($archivobasename($archivo)); //agregar archivo
}
$zip->close();// cerrando el zip

$mail->AddAttachment("mi_zip.zip"); //adjuntamos el zip
$mail->Send(); // enviamos el mail

unlink("mi_zip.zip"); //borramos el zip

?>
por cierto estoy omitiendo todos los pasos de la creación del mail
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #20 (permalink)  
Antiguo 15/06/2011, 10:23
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

Vez que me ayudaste con el checkbox asta ayi esta bien lo que quiero es seleccionar los archivos y mandarlos al zip pero creo que lo que hace este codigo es enviarlo directo de la consulta a un zip
  #21 (permalink)  
Antiguo 15/06/2011, 13:01
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Seleccion y envio a mail

no, fíjate en esa linea que dice:

if($_POST[$archivo]) $zip->addFile($archivo, basename($archivo));

ahí pregunta si el archivo fue seleccionado ($_POST[]), cuando el archivo en el checkbox es seleccionado cambia su valor a 1, si no es nulo y por lo tanto no se agrega al zip.

de todos modos te advierto que nunca había hecho un zip, puede que no funcione, tendrás que revisar bien las funciones de zip de php.

prueba y ve si te llega el mail con un zip que contenga los archivos que has seleccionado, lo mejor que puedes hacer es eso, ese procedimiento se llama "prueba y error" XD
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #22 (permalink)  
Antiguo 15/06/2011, 15:38
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

ya no es necesario a un mail sino a disco duro ayi ya intente y no me deja descargarlo
  #23 (permalink)  
Antiguo 16/06/2011, 12:07
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Seleccion y envio a mail

descargar el zip?

como estás intentando descargarlo?
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #24 (permalink)  
Antiguo 17/06/2011, 12:22
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

Código PHP:
Ver original
  1. <?php
  2. $zip = new ZipArchive;
  3. $zip->open("mi_zip.zip"); //crear nuevo zip
  4.  
  5. $MQ=mysql_query("SELECT * FROM archivos WHERE empresa='$empresa'", $conexion);
  6. while($MFA=mysql_fetch_array($MQ)){
  7. $archivo=$MFA['archivo_nombre'];
  8. if($_POST[$archivo]) $zip->addFile($archivo, basename($archivo)); //agregar archivo
  9. }
  10. $zip->close();// cerrando el zip
  11.  
  12.  
  13.  
  14. <INPUT type="submit" name="submit" value="descargar">
  #25 (permalink)  
Antiguo 17/06/2011, 14:02
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Seleccion y envio a mail

ah, en teoría ya debería estar guardado el zip (comprueba) para descargarlo no puedes usar un submit, tienes 2 opciones

1.- Link:
<a href='mi_zip.zip'>Descargar ZIP!</a>

2.- Boton:
<input type="button" name="Submit" value="Descargar ZIP!" onclick="location.href='mi_zip.zip';" />

no estoy seguro de la segunda opción...
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #26 (permalink)  
Antiguo 20/06/2011, 10:14
Avatar de CaballeroAries  
Fecha de Ingreso: agosto-2010
Mensajes: 70
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Seleccion y envio a mail

Lo e puesto asi pero no me funciona amigo la verdad yo no se mucho sobre este tema gras por ayudarme

Código PHP:
<?php
$zip 
= new ZipArchive;
$zip->open("mi_zip.zip");
$empresa$_POST['empresa'];
$conexion mysql_connect("localhost","server1","amylia1979") or die("No se pudo realizar la conexion con el servidor.");
mysql_select_db("almacenar",$conexion) or die("No se puede seleccionar BD");
$MQ=mysql_query("SELECT * FROM archivos WHERE empresa='".$_POST['empresa']."'"$conexion);
while(
$MFA=mysql_fetch_array($MQ)){
$archivo=$MFA['archivo_nombre'];
if(
$_POST[$archivo]) $zip->addFile($archivobasename($archivo)); //agregar archivo
}
$zip->close();
?>
<FORM enctype="multipart/form-data" method="post" action="empaquetar.php">
<input type="checkbox" name="<?php echo $archivo;?>" value="1" name= "archivos">
<label><?php echo $archivo;?></label>

<a href='mi_zip.zip'>Descargar ZIP!</a>
</form>
  #27 (permalink)  
Antiguo 20/06/2011, 12:14
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Seleccion y envio a mail

estás olvidando el segundo ciclo, se supone que haces un ciclo para mostrar los checkboxs y otro para agregar los archivos seleccionado al zip:

Código PHP:
Ver original
  1. while($MFA=mysql_fetch_array($MQ)){
  2. $archivo=$MFA['archivo_nombre'];
  3. ?>
  4. <input type="checkbox" name="<?php echo $archivo;?>" value="1">
  5. <label><?php echo $archivo;?></label>
  6. <?php
  7. }?>

de todos modos, deberías hacer pruebas con ese método de hacer zips, yo no lo he probado. el ejemplo lo saque del manual de PHP (php.net) en teoría debería estar bien, pero deberías hacer pruebas e ir imprimiendo las variables para ir entendiendo que hace mal.

en otras palabras deberías poner más de tu parte XD
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D

Etiquetas: envio, mail, seleccion
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 05:34.