API

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Nathan K

Nathan K

22/12/2008 16:43:00
Quote Anchor link
Hallo,
Ik ben bezig met een MSN bot die kan SMS'en. Alles wordt gescript in PHP (API).
Als je wilt gaan SMS'en moet je in je MSN gesprek SMS typen, daarna de telefoonnummer en vervolgens het bericht.
Bijvoorbeeld:
SMS 0612345678 Heeeyy alles goed?.

Ik heb alleen geen idee hoe ik het script eruit moet zien. Iets met explode ofzoiets.

Bedankt!
Gewijzigd op 01/01/1970 01:00:00 door Nathan K
 
PHP hulp

PHP hulp

29/11/2024 22:55:50
 
Mitchell

Mitchell

22/12/2008 16:46:00
Quote Anchor link
Hoe groot is je portemonnee? Want zo te horen weet je er weinig vanaf.
 
Nathan K

Nathan K

22/12/2008 16:51:00
Quote Anchor link
Waar slaat dit er nou weer op.
Ik heb even een duw in de juiste richting nodig.
 
PHP Newbie

PHP Newbie

22/12/2008 17:14:00
Quote Anchor link
Mitchell heeft wel een punt, al brengt hij het niet zo goed. Dit is erg basic PHP en wanneer je dat niet beheerst vraag ik me af of je een goede en veilige applicatie op kan zetten.

Een oplossing voor je probleem is:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$sString
= 'SMS nummer en het bericht';

$aExplode = explode(' ', $string);

$code = $aExplode[0];
$nummer = $aExplode[1];
$bericht = implode(' ', array_slice($aExplode,2));
?>


Maar een goede regex is mooier, en er is vast wel iemand hier die je daarmee kan helpen.
 
Satsume

Satsume

22/12/2008 17:18:00
Quote Anchor link
of

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
preg_match('/SMS\s(?P<telnr>[0-9]{10})\s(?P<bericht>.*)/i' , $sText, $aGevonden);

$sBericht = $aGevonden['bericht'];
$sTelNr = $aGevonden['telnr'];

echo $sBericht;
echo $sTelNr;
?>


ongeveer ;)

edit: miste een '\s', werkt iig wel.
Gewijzigd op 01/01/1970 01:00:00 door Satsume
 
Nathan K

Nathan K

22/12/2008 19:06:00
Quote Anchor link
Okee bedankt, maar dit is niet echt wat ik bedoelde. :$

Ik bedoelde echter hoe ik mijn systeem moet "vertellen" dat alle berichten die met SMS beginnen gesmst moeten worden.
(Alleen het if regel is wat ik nodig heb)

Bedankt!
Gewijzigd op 01/01/1970 01:00:00 door Nathan K
 
Arjan Kapteijn

Arjan Kapteijn

22/12/2008 19:19:00
Quote Anchor link
Volgens mij heeft Satsume dat al voor je gemaakt... indien die $sBericht en $sTelNr goed gevuld worden kan je gaan smsen (wel even het telefoonnummer controleren, en het aantal tekens van het bericht).
 
Satsume

Satsume

23/12/2008 09:27:00
Quote Anchor link
een simpele if else constructie dan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
$sPrefix1
= '\+316\-';
$sPrefix2 = '06';
$sPrefix3 = '06\-';

$sRegex = '/^SMS\s('.$sPrefix1.'|'.$sPrefix2.'|'.$sPrefix3.')(?P<telnr>[0-9]{8})\s(?P<bericht>.*)/i';

if(preg_match($sRegex , $sText, $aGevonden))
{

    $sBericht = $aGevonden['bericht'];
    $sTelNr = $aGevonden['telnr'];

    // Hier de code om $sBericht te SMS-en naar $sTelNr
    // LET OP: $sTelNr bevat alleen de 8 cijfers na de 06-
    // Bijv.: 12345678 in 06-12345678

    
}
else
{
    // Geen sms dus wat anders doen denk ik? ;)
    
}
?>


matched alleen op nederlandse nummers, als bonus heb ik je ook de regex gegeven voor +316-12345678 en 06-12345678

De rest is aan jou ;)

edit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?/?>
Gewijzigd op 01/01/1970 01:00:00 door Satsume
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.