私はSMSプロジェクトのオンラインショッピングストアで働いていますが、その目的は、顧客より注文される注文が、チェックアウトの際に顧客が指定した番号でSMSを自動的に送信することです。HTTPS URLがPHPで動作しない
SMS会社はこのためのAPIドキュメントを提供します。最初に、セッションIDを生成する認証プロセスが必要でした。セッションIDを使用して、ユーザーにSMSを送信しました。
認証コード:
$msisdn = 'abc';
$password = 'xyz';
$session_req="https://telenorcsms.com.pk:27677/corporate_sms2/api/auth.jsp?msisdn=".$msisdn."&password=".$password;
$xmlResponse = simplexml_load_file('https://telenorcsms.com.pk:27677/corporate_sms2/api/auth.jsp?msisdn=abc&password=xyz');
$sessionID = $xmlResponse->corpsms->data;
var_dump($sessionID);
echo "Session ID: " . $sessionID;
さて、問題は、私はセッションIDを取得することができませんです。私がvar_dump($sessionID);
を使用するとき、NULLが出力され、echo "Session ID: " . $sessionID;
を使用して画面に表示しようとすると何も表示されません。私がheader('Location:'.$session_req);
コードを以下より使用すると、上記のURLの応答があり、セッションIDが正常に表示されます。
成功応答:
<?xml version="1.0" encoding="UTF-8" ?>
<corpsms>
<command>Auth_request</command>
<data>Session ID</data>
<response>OK</response>
</corpsms>
セッションIDは、XML構造内に格納され、その中に別のURLが、私のファイルは別のURLです。 (http://example.com/neworder.php)。 誰も私に、セッションIDをPHPの変数に格納して、それをさらに使ってSMSを送信する方法を教えてもらえますか? 重要な点は、セッションIDが非アクティブの30分後に失効することです。事前に
https://telenorcsms.com.pk:27677/corporate_sms2/api/sendsms.jsp?session_id=xxxx&to=923xxxxxxxxx&text=xxxx&mask=xxxx
感謝: 以下はセッションIDを使用してSMSを送信するためのURLです。
MUNEEB
カールを試しましたか? – tousif
はい、解決策が見つからないのは目的がセッションIDの値を取得するためです。 –
$ ch = curl_init(); \t \t curl_setopt($ ch、CURLOPT_URL、$ session_req); \t \t curl_setopt($ ch、CURLOPT_RETURNTRANSFER、true); \t \t // SSL証明書の場合 \t \t curl_setopt($ ch、CURLOPT_SSL_VERIFYPEER、false); \t \t $ response = curl_exec($ ch); \t \t $ tokens = explode( "\ n"、trim($ response)); \t \t curl_close($ ch); \t \t var_dump($ response); –