Ver Mensaje Individual
  #21 (permalink)  
Antiguo 28/02/2012, 19:04
manugiralda
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con checkbox, solo recoge un dato

Bueno a ver voy a ponerte un codigo un poco resumido que utilizo to para mandar emails en mi pagina a mucha gente, tal y como yo lo hago. A ver si puedo ayudarte.

Pagina donde esta el formulario.

Código PHP:
//Aqui creo un array de usuario y lo asigno a cada respuesta de la BD por medio de un while de esta manera.
$usuario = array()
$db_conexion mysql_query("SELECT ID FROM usuarios ");
while(
$a_conexion mysql_fetch_array($db_conexion)){
    
$usuario[] = $a_conexion['usuario']

Ahora en el array usuario tengo todos los usuarios de mi tabla usuarios y creo un checkbox para cada usuario

Código PHP:
<html>
<
head>
</
head>
<
body>
<
form name="formulario" action="action.php" method="POST">

for(
$A=0;$usuario[$A]!="";$A++)}{
     echo 
'<input type="checkbox" name="check'.$A.'" value="'.$usuario[$A].'"/> Enviar a '.$usuario[$A].'<br>';
}

<
input type="submit" value="Enviar email">

</
form>
</
body>
</
html
Aqui tendriamos inpreso un checkbox por dada usuario llamados "check0, check1, check2";

y en action PHP

envio el email asi

Código PHP:

for($A=0;$_POST['check'.$A]!="";$A++){
     
$db_conexion mysql_query("SELECT nombre, email FROM usuarios WHERE id = '".$_POST['check'.$A]."' ");
     
$a_conexion mysql_fetch_array($db_conexion);

     
$nomrbre $a_conexion['nombre'];
     
$email$a_conexion['email'];
     
     
//Aqui tenemos los datos del usuario   $_POST['check'.$A] y enviamos el mensaje

      
$header "MIME-Version: 1.0\n";
      
$header .= "Content-Type: text/html; charset=UTF-8\n";
      
$header .="From: [email protected]\n";

      
$mensaje "Bienvenido".$nomrbre;

      
mail("$email","Titulo","$mensaje","$header");



Con este bucle recorre todos los $_POST['check'] cada uno con un numero mas que asigna la variable $A, encada vuelta de bucle recoge los datos necesarios para enviar el email de cada usuario y lo envia, hasta que ya no halla mas $_POST['check'] con un valor.

Espero haberte ayudado con mi ejemplo, sobre todo a entender el tema de los arrays. Que es lo importante, recuerda el proverbio chino, si un hombre tiene hambre no le des peces, enseñale a pescar.

Por cierto, he escrito el codigo directamente aqui, asi que es problable que haya algun error de sintaxis, si te da fallo o no entiendes algo dimelo, y si siegues sin poder hacerlo, si quieres puedes pasarme tu codigo entero y le hecho un vistazo. Para ver si te lo puedo soluciuonar, aunque lo mejor es que tu veas donde esta el fallo, pues es donde se aprende.