Fout met sms
Ik heb een hele rare fout in mijn smsscript. Bij mij en de meeste zegt hij gewoon 'Succesvol verzonden" en worden de benodigde credits van hun saldo afgetrokken.
Alleen bij een paar zo ook bij een vriend van mij, staat er dat de sms niet succesvol is verzonden, maar hij wordt WEL degelijk verzonden en hij ontvangt hem dus ook gewoon, maar door deze fout blijven de credits op zijn account staan. Dus hij kan gewoon helemaal gratis ongelimiteerd smsen, met zijn 100 credits die hij cadeau kreeg bij aanmelding. Dit is natuurlijk niet de bedoeling!
Mijn vraag is dus aan jullie of jullie een fout zien in onderstaand stukje phpcode!
--------------------------------------------
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?
if($_SERVER['REQUEST_METHOD'] == "POST"){
$query = "SELECT * FROM users WHERE id = '".$memberid."'";
$result = mysql_query($query) or die(mysql_error());
while($object = mysql_fetch_object($result)){
$saldo = $object->saldo;
}
$login = "XXXX"; ///Login van smsdiscount
$pass = "XXXXXX"; ///Pass van smsdiscount
$to = $_POST['to'];
$from = "XXXXXX"; //voipbuster account deafult
if ($_POST['geenads'] == "yes"){
$text=urlencode($_POST['text']);
}else{
$text=urlencode($_POST['text']);
$text .=urlencode($ad);
}
if ($_POST['geenads'] == "yes"){
$prijs = "150";
}else{
$prijs = "100";
}
if($saldo >= $prijs){
$tcon = file_get_contents("https://myaccount.voipbuster.com/clx/sendsms.php?username=$login&password=$pass&from=$from&to=$to&text=$text");
if(eregi("success", $tcon))
{
echo "<br><br><strong>Je sms is succesvol verstuurd!</strong><br> <br><br>Let op: Klik NIET op vernieuwen, anders wordt je sms nog eens verstuurd!";
$query = "UPDATE users SET saldo=saldo-".$prijs." WHERE id='".$_SESSION['memberid']."'";
mysql_query($query) or die(mysql_error());
}
else
{
echo '<br><br> <strong>Je sms is niet verzonden!</strong><br> <br><br>Waarschijnlijk ben je iets vergeten in te vullen, of heb je te veel tekens gebruikt.';
echo '<p>LET OP : Als een sms niet wordt verzonden dan staat de mobiel van de ontvanger waarschijnlijk uit!</p>';
echo" $tcon";
}}else{
echo"<br><br>Niet genoeg credits!";
}}else{
[/code]
(Jorg B)
Bedankt!
if($_SERVER['REQUEST_METHOD'] == "POST"){
$query = "SELECT * FROM users WHERE id = '".$memberid."'";
$result = mysql_query($query) or die(mysql_error());
while($object = mysql_fetch_object($result)){
$saldo = $object->saldo;
}
$login = "XXXX"; ///Login van smsdiscount
$pass = "XXXXXX"; ///Pass van smsdiscount
$to = $_POST['to'];
$from = "XXXXXX"; //voipbuster account deafult
if ($_POST['geenads'] == "yes"){
$text=urlencode($_POST['text']);
}else{
$text=urlencode($_POST['text']);
$text .=urlencode($ad);
}
if ($_POST['geenads'] == "yes"){
$prijs = "150";
}else{
$prijs = "100";
}
if($saldo >= $prijs){
$tcon = file_get_contents("https://myaccount.voipbuster.com/clx/sendsms.php?username=$login&password=$pass&from=$from&to=$to&text=$text");
if(eregi("success", $tcon))
{
echo "<br><br><strong>Je sms is succesvol verstuurd!</strong><br> <br><br>Let op: Klik NIET op vernieuwen, anders wordt je sms nog eens verstuurd!";
$query = "UPDATE users SET saldo=saldo-".$prijs." WHERE id='".$_SESSION['memberid']."'";
mysql_query($query) or die(mysql_error());
}
else
{
echo '<br><br> <strong>Je sms is niet verzonden!</strong><br> <br><br>Waarschijnlijk ben je iets vergeten in te vullen, of heb je te veel tekens gebruikt.';
echo '<p>LET OP : Als een sms niet wordt verzonden dan staat de mobiel van de ontvanger waarschijnlijk uit!</p>';
echo" $tcon";
}}else{
echo"<br><br>Niet genoeg credits!";
}}else{
[/code]
(Jorg B)
Bedankt!
Gewijzigd op 01/01/1970 01:00:00 door Nathan K
Maak tevens gebruik van inspringen in je script. Dat zal sowieso voor meer overzicht zorgen. Als je je script tussen [.code] en [/.code] (zonder puntjes) zet, zal de lay-out ook niet zo uitgerekt worden... ;-)
if(eregi("success", $tcon))
en niet gewoon
if(FALSE !== stripos('success', $tcon))
Maar inderdaad wat Djemo zegt, je zal naar de verschillende outputs van je file_get_contents moeten kijken.
Ps. is dit nieuw?
LET OP : Als een sms niet wordt verzonden dan staat de mobiel van de ontvanger waarschijnlijk uit!
Sms wordt dan toch gewoon later verzonden? Dus als iemand smst naar een mobiel die uitstaat gaan er geen credits vanaf maar wordt de sms wel later verzonden?