Anzeige
Smartes Cloud Hosting für anspruchsvolle Projekte.
↬ Loslegen und Spaces testen ↬ Jetzt testen!
Gastautor 4. August 2006

SMS mit PHP verschicken

Kein Beitragsbild

von Marc Teuber

Wix Webseiten — echt superpraktisch. ↬ Mehr erfahren

Das Versenden einer E-Mail ist mit PHP bei fast jedem Webhosting-Anbieter möglich. Möchte man jedoch eine SMS veschicken, um jemanden kurz und knapp zu informieren, sieht die Sache schon schwieriger aus.

Anzeige

Eine SMS hat gegenüber der E-Mail den großen Vorteil, dass sie direkt ankommt und in der Regel innerhalb kürzester Zeit vom Empfänger gelesen wird. Gerade bei dringenden Informationen empfielt es sich, diese über eine SMS zu verschicken. Mittlerweile kann man zwar E-Mails per Push-Dienst senden und am Handy empfangen, dennoch ist das Versenden einer SMS wesentlich einfacher.

Zunächst braucht man einen geeigneten Anbieter eines SMS-Gateways. Mesmo, Massenversand, Seriensms, Hostserver und Teammessage sind nur wenige von den unzähligen Anbietern, die im Internet zufinden sind. Fast jeder dieser Anbieter besitzt eine HTTP-Schnittstelle, die wir benötigen. Registrieren Sie sich bei einem geeigneten Anbieter. Die Preise liegen zwischen 0,033 € und 0,089 € pro SMS. Der große Unterschied besteht zwischen den SMS, die eine variable Absenderkennung (etwa Ihr Firmenname) haben und den SMS, die eine feste, vom Anbieter vorgegebene Absenderkennung haben. Letztere sind wesentlich günstiger. Die nachfolgende Tabelle zeigt die oben genannten Anbieter und deren Preise (Stand: August 2006).

Absenderangabe
variablefest
Mesmoab 0,075 €ab 0,035 €
Massenversandab 0,063 €ab 0,033 €
Seriensmsab 0,089 €ab 0,059 €
Hostserverab 0,080 €
Teammessageab 0,067 €

Die Tabelle zeigt nur eine grobe Richtung wohin die Preise gehen. Zu beachten sind noch eventuelle monatliche Grundgebühren und die verschiedensten SMS-Routen. Die genannten SMS-Routen gibt es bei einigen Anbietern und definieren die Zustellsicherheit der SMS.

Wenn Ihr eigener Webserver oder Ihr Webhosting-Paket die Skriptsprache PHP unterstüzt, könnte die Umsetzung folgendermaßen aussehen. Man erstellt eine neue PHP-Datei und eine neue Funktion, die drei Parameter erwartet und eine HTTP-Anfrage an das SMS-Gateway abschickt.

 <?php
function sms($absender, $empfaenger, $text) {
  $url =
'http://www.anbieter.de/sms.php?
text=%TEXT%&emfaenger=%EMPFAENGER%&absender=%ABSENDER%';

  $placeholder = array(
    '%EMPFAENGER%' => $empfaenger,
    '%ABSENDER%'   =>
rawurlencode($absender),
    '%TEXT%'
=> rawurlencode(substr($text, 0, 160)));

  $url = strtr($url, $placeholder);

  $fp=fopen($url, 'r')
    or die ('Connection failed');
}
?>

Die in diesem PHP-Code genannte URL (3. Zeile) ist natürlich entsprechend anzupassen, weil sie von Anbieter zu Anbieter unterschiedlich ist. Die URL erhält man beim SMS-Gateway-Anbieter. Tragen Sie die komplette URL, also mit den Parametern ein. Dabei ist zu beachten, dass dort, wo die Werte für Empfänger, Absender und Text stehen, die Platzhalter %EMPFAENGER%, %ABSENDER% und %TEXT eingesetzt werden (wie in dem oben genannten Beispiel-Code auch). Speichern Sie die neue PHP-Datei beispielsweise unter den Namen „sms.php“ ab.

Um nun eine SMS verschicken zu können, inkludiert man die eben erstellte PHP-Datei und ruft die neue Funktion wie folgt auf:

      <?php
include('sms.php');
      
sms('Dr.Web', '+4917012345678', 'Das ist eine Test-SMS!');
?>

Der Webserver würde nun die URL

      http://www.anbieter.de/sms.php?text=Das%20ist%20eine%20Test-SMS%21&emfaenger=+4917622371139&absender=Dr.Web

aufrufen und das SMS-Gateway somit eine SMS an die Nummer +4917012345678 verschicken.

Abbildung Handy

4 Kommentare

  1. Ich beschäftige mich gerade mit einer Online-Applikation welche das Versenden von SMS beinhaltet. Nach dem Lesen auf den Webseiten einiger SMS Gateway Anbieter und in Foren welche das Thema SMS versenden & PHP beinhalten, bin ich hier auf die beste Beschreibung aller Zusammenhänge mit einem Beispiel gestoßen….

  2. Man sieht noch die Handynummer :) + 49176223+++++ (letzter Code, sprich URL)

  3. Der Artikel ist ja nun schon etwas älter, aber immer noch einfach und gut erklärt. Kaum ein anderer Artikel beschreibt es so kurz und knackig ohne irgendwelche unsinnigen Funktionen in die Scripte einzubauen. Das ist wirklich ein schöner Einstiegsartikel in das SMS verschicken per PHP über einen HTTP SMS Gateway. Ich würde nur gern ergänzen, dass es z.B. auch bei Lox24 ein preislicht attraktives Angebot gibt.

  4. Na das ist doch schon mal was. Klar, knapp und präzise. Wie man es sich als Ahnungsloser wünscht. Dankeschön.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.