Foros del Web » Programando para Internet » PHP »

Ayuda sobre consulta

Estas en el tema de Ayuda sobre consulta en el foro de PHP en Foros del Web. Hola a todos; Quiero enviar SMS a un grupo de gente, para enviarlos a muchos, necesito que los numeros de telefono esten separados por comas. ...
  #1 (permalink)  
Antiguo 26/09/2009, 03:27
 
Fecha de Ingreso: febrero-2008
Mensajes: 675
Antigüedad: 16 años, 1 mes
Puntos: 5
Ayuda sobre consulta

Hola a todos;
Quiero enviar SMS a un grupo de gente, para enviarlos a muchos, necesito que los numeros de telefono esten separados por comas.
En la base de datos que he creado tengo estos campos.
nombre, apellido, grupo y numero de telefono. Mi idea es que mediante un despegable se pueda seleccionar el grupo, pero aqui empiezan las dudas.
Como puedo poner todos los numeros de telefono en un campo separados con comas para que me haga el envio a todos los telefonos del grupo? y otra cosa, como es la mejor manera de almacenar esos datos?.

Gracias
  #2 (permalink)  
Antiguo 26/09/2009, 04:44
 
Fecha de Ingreso: diciembre-2007
Mensajes: 131
Antigüedad: 16 años, 3 meses
Puntos: 6
Respuesta: Ayuda sobre consulta

Código PHP:
$q "SELECT * FROM tabla_usuarios";
$resultados mysql_query($q); # Obtenemos los resultados de la base de datos

$grupos = array();
# Hacemos el famoso loop recorriendo todas las lineas del resultado de la base de datos
while ($row mysql_fetch_array($resultados)) {
    
# Creamos un array multi-nivel donde cada grupo es el 1er nivel, y cada resultado para ese grupo es el 2do nivel
    
$grupos[$row['grupo']][] = $row;
}

# Una vez que llegamos a este punto, deberiamos tener un array de la siguiente forma:
# $grupos {
#    grupos1 {
#       nombre;
#       apellido;
#       telefono;
#       etc;
#    }
#    grupo2 {
#       nombre;
#       apellido;
#       telefono;
#       etc;
#    }
#    etc
# }

# ahora hacemos un loop por cada grupo, y guardamos en un array separado los numeros de telefono, ordenados tambien por grupos
$telefonos_por_grupo = array();
for (
$i 0$i count($grupos); $i++) {
    for (
$x 0$x count($grupos[$i]); $x++) { # El loop es multinivel, ya que cada array es multinivel (grupo + item del grupo)
        
$telefonos_por_grupo[$grupos[$i]['grupo']][] = $grupos['telefono'];
    }
}

# Una vez terminado esto, tenemos otro array multi nivel, pero solo con los valores del numero de telefono. Con este array vamos a crear el 'select'

$keys array_keys[$telefonos_por_grupos];
echo 
'<select name="grupos">';
for (
$i 0$i count($telefonos_por_grupos); $i++) {
    echo 
'<option value="'.implode(",",$telefonos_por_grupos[$keys[$i]].'">'.$keys[$i].'</option>';
}
echo 
'</select>'
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:25.