Envoi multiple d'un sms php
Résolu
safoo86
Messages postés
47
Date d'inscription
Statut
Membre
Dernière intervention
-
safoo86 Messages postés 47 Date d'inscription Statut Membre Dernière intervention -
safoo86 Messages postés 47 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'aimerai bien envoyer un sms à tous les destinataires stockés dans ma base de données...Mon projet consiste à mettre tous les numéros séparés par un espace dans une balise input....il me met toujours le dernier numéro uniquement....
j'aimerai bien envoyer un sms à tous les destinataires stockés dans ma base de données...Mon projet consiste à mettre tous les numéros séparés par un espace dans une balise input....il me met toujours le dernier numéro uniquement....
A voir également:
- Envoi multiple d'un sms php
- Programmer envoi sms - Guide
- Logiciel envoi sms - Télécharger - Messagerie
- Envoi de sms par internet - Guide
- Comment envoyer un point gps par sms - Accueil - Téléphones
- Envoi impossible messenger - Forum Facebook Messenger
10 réponses
Bonjour,
Ton sujet n'est pas dans le bon forum, tu aurais du le mettre dans la section "Programmation" mais passons, j'ai demandé à ce qu'il soit déplacé.
Tu peux me donner ton bout de code qui récupère les numéros svp ?
Tu dois faire une boucle et récupérer tous les numéros, or je pense que tu récupères que le dernier.
Ton sujet n'est pas dans le bon forum, tu aurais du le mettre dans la section "Programmation" mais passons, j'ai demandé à ce qu'il soit déplacé.
Tu peux me donner ton bout de code qui récupère les numéros svp ?
Tu dois faire une boucle et récupérer tous les numéros, or je pense que tu récupères que le dernier.
jusqu'au mnt..;j'ai pu recupérer tous les numéros mais dans des input différents....j'aimerai bien les avoir dans le mem input (zone de texte) séparés par un espace
je travaille sur linux..passerelle kannel pour l'envoi...voici mon code:
<html>
<body>
<table border="1" cellpadding="0" cellspacing="0">
</tr>
<p>Saisissez les numeros GSM separes par un espace :
<?php
// Déclaration des paramètres de connexion
$host ="localhost";
// Généralement la machine est localhost
// c'est-a-dire la machine sur laquelle le script est hébergé
$user = "root";
$bdd = "dlr";
$passwd = "";
// Connexion au serveur
mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur");
mysql_select_db($bdd) or die("erreur de connexion a la base de donnees");
// Creation et envoi de la requete
$query = "SELECT destination FROM dlr ";
$result = mysql_query($query);
// Recuperation des resultats
while($row = mysql_fetch_row($result)){
$destination = $row[0];
?>
<input type ="text" name="to" value="<?php echo $destination ?>" /><?php
}
?>
<form name="sendsms" method="get" action="http://localhost:13013/cgi-bin/sendsms">
<input name="username" value="tester" type="hidden" />
<input name="password" value="foobar" type="hidden" />
<input name="from" value="+21621773040" type="hidden" />
<br />Votre message (160 caracteres maximum) :<br />
<textarea cols="40" rows="4" name="text" ></textarea></p>
<input value="Envoyer" name="submit" type="submit" />
<input value="Effacer" type="reset" />
<?php
mysql_close();
?>
</table>
</body>
</html>
je travaille sur linux..passerelle kannel pour l'envoi...voici mon code:
<html>
<body>
<table border="1" cellpadding="0" cellspacing="0">
</tr>
<p>Saisissez les numeros GSM separes par un espace :
<?php
// Déclaration des paramètres de connexion
$host ="localhost";
// Généralement la machine est localhost
// c'est-a-dire la machine sur laquelle le script est hébergé
$user = "root";
$bdd = "dlr";
$passwd = "";
// Connexion au serveur
mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur");
mysql_select_db($bdd) or die("erreur de connexion a la base de donnees");
// Creation et envoi de la requete
$query = "SELECT destination FROM dlr ";
$result = mysql_query($query);
// Recuperation des resultats
while($row = mysql_fetch_row($result)){
$destination = $row[0];
?>
<input type ="text" name="to" value="<?php echo $destination ?>" /><?php
}
?>
<form name="sendsms" method="get" action="http://localhost:13013/cgi-bin/sendsms">
<input name="username" value="tester" type="hidden" />
<input name="password" value="foobar" type="hidden" />
<input name="from" value="+21621773040" type="hidden" />
<br />Votre message (160 caracteres maximum) :<br />
<textarea cols="40" rows="4" name="text" ></textarea></p>
<input value="Envoyer" name="submit" type="submit" />
<input value="Effacer" type="reset" />
<?php
mysql_close();
?>
</table>
</body>
</html>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut,
Essaye ceci :
Essaye ceci :
// Creation et envoi de la requete $query = "SELECT destination FROM dlr "; $result = mysql_query($query); // Recuperation des resultats while($row = mysql_fetch_row($result)){ $destination .= $row[0].' '; ?> <input type ="text" name="to" value="<?php echo $destination ?>" /><?php } ?>
De cette facon il m'affiche plusieurs inputs.chaque numéro dans un input a part...alors que j'aime les avoir dans le meme input....j'ai essayer longtemps..;je vais tenter de traiter les numéros dans le fichier sendsms ecrit en python...mais je sais pas comment faire...
voici son code:
#!/usr/bin/python
import os, string, sys, urllib
HOST = "localhost"
PORT = 13013
USERNAME = "tester"
PASSWORD = "foobar"
NUMBERS = "~/.sendsms.dat"
def is_a_phone_number(str):
if not str:
return 0
for c in str:
if not c in "0123456789+- ":
return 0
return 1
def recipient(arg):
if is_a_phone_number(arg):
return arg
f = open(os.path.expanduser(NUMBERS), "r")
arg = string.lower(arg)
number = None
for line in f.readlines():
parts = string.split(line)
if len(parts) == 2 and string.lower(parts[0]) == arg:
number = parts[1]
break
f.close()
if number:
return number
print "Unknown recipient", arg
sys.exit(1)
def sendsms():
to = urllib.quote_plus(recipient(sys.argv[1]))
text = urllib.quote_plus(string.join(sys.argv[2:], " "))
url="http://%s:%d/cgi-bin/sendsms?username=%s&password=%s&to=%s&text=%s" \
% (HOST, PORT, USERNAME, PASSWORD, to, text)
f = urllib.urlopen(url)
print f.read()
f.close()
if __name__ == "__main__":
sendsms()
voici son code:
#!/usr/bin/python
import os, string, sys, urllib
HOST = "localhost"
PORT = 13013
USERNAME = "tester"
PASSWORD = "foobar"
NUMBERS = "~/.sendsms.dat"
def is_a_phone_number(str):
if not str:
return 0
for c in str:
if not c in "0123456789+- ":
return 0
return 1
def recipient(arg):
if is_a_phone_number(arg):
return arg
f = open(os.path.expanduser(NUMBERS), "r")
arg = string.lower(arg)
number = None
for line in f.readlines():
parts = string.split(line)
if len(parts) == 2 and string.lower(parts[0]) == arg:
number = parts[1]
break
f.close()
if number:
return number
print "Unknown recipient", arg
sys.exit(1)
def sendsms():
to = urllib.quote_plus(recipient(sys.argv[1]))
text = urllib.quote_plus(string.join(sys.argv[2:], " "))
url="http://%s:%d/cgi-bin/sendsms?username=%s&password=%s&to=%s&text=%s" \
% (HOST, PORT, USERNAME, PASSWORD, to, text)
f = urllib.urlopen(url)
print f.read()
f.close()
if __name__ == "__main__":
sendsms()
Il faut sortit le input de ta boucle et met du php partout au lieu de mixer html et php, voici ce que ça donne chez moi et ça fonctionne :
$result = mysql_query($query); // Recuperation des resultats while($row = mysql_fetch_row($result)){ $destination .= $row[0].' '; } echo '<input type="text" name="to" value="'.$destination.'" />';
oui c vrai il affiche le bon résultat mais dans ce cas le input ne sera pas traiter par la fonction sendsms quand on envoi le sms......jé trouvé enfin la solution...je stocke les données de la base de données dans un fichier puis je les récupère....et ca mùarché enfin
voici mon code:
// Connexion au serveur
mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur");
mysql_select_db($bdd) or die("erreur de connexion a la base de donnees");
// Creation et envoi de la requete
$query = "SELECT destination FROM dlr ";
$result = mysql_query($query);
$fp = fopen("/home/safoo/Bureau/test.txt","w");
// Recuperation des resultats
while($row = mysql_fetch_row($result)){
$destination = $row[0];
// ouverture du fichier en écriture
fputs($fp, "$destination"); // on écrit la destination dans le fichier
fputs($fp, " ");
?>
<?php
}
?>
<?php
fclose($fp);
?>
<?
$fp = fopen("/home/safoo/Bureau/test.txt","r"); //lecture du fichier
while (!feof($fp)) { //on parcourt toutes les lignes
$page .= fgets($fp,13); // lecture du contenu de la ligne
}
?>
<form name="sendsms" method="get" action="http://localhost:13013/cgi-bin/sendsms">
<input name="username" value="tester" type="hidden" />
<input name="password" value="foobar" type="hidden" />
<input name="from" value="+21621773040" type="hidden" />
<center><input size = "100" type="text" name="to" value="<?php echo $page ?>" /></center></br>
<br /><center>Votre message (160 caracteres maximum) :</center><br />
<center><textarea cols="80" rows="10" name="text1" ></textarea></center></p>
<p><center><input value="Envoyer" name="submit" type="submit" /> </center>
<center><input value="Effacer" type="reset" /></center></br>
</p>
<?php
mysql_close();
?>
voici mon code:
// Connexion au serveur
mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur");
mysql_select_db($bdd) or die("erreur de connexion a la base de donnees");
// Creation et envoi de la requete
$query = "SELECT destination FROM dlr ";
$result = mysql_query($query);
$fp = fopen("/home/safoo/Bureau/test.txt","w");
// Recuperation des resultats
while($row = mysql_fetch_row($result)){
$destination = $row[0];
// ouverture du fichier en écriture
fputs($fp, "$destination"); // on écrit la destination dans le fichier
fputs($fp, " ");
?>
<?php
}
?>
<?php
fclose($fp);
?>
<?
$fp = fopen("/home/safoo/Bureau/test.txt","r"); //lecture du fichier
while (!feof($fp)) { //on parcourt toutes les lignes
$page .= fgets($fp,13); // lecture du contenu de la ligne
}
?>
<form name="sendsms" method="get" action="http://localhost:13013/cgi-bin/sendsms">
<input name="username" value="tester" type="hidden" />
<input name="password" value="foobar" type="hidden" />
<input name="from" value="+21621773040" type="hidden" />
<center><input size = "100" type="text" name="to" value="<?php echo $page ?>" /></center></br>
<br /><center>Votre message (160 caracteres maximum) :</center><br />
<center><textarea cols="80" rows="10" name="text1" ></textarea></center></p>
<p><center><input value="Envoyer" name="submit" type="submit" /> </center>
<center><input value="Effacer" type="reset" /></center></br>
</p>
<?php
mysql_close();
?>
Si ça marche comme tu le souhaites, tant mieux.
Mais pourquoi tu ouvres et fermes tes balises PHP à chaque morceau de code ?
Bref, bonne continuation.
Mais pourquoi tu ouvres et fermes tes balises PHP à chaque morceau de code ?
Bref, bonne continuation.
Donc, oui, forcément, il a été mis au bon endroit...