お世話になっております。ここ数日試行錯誤を繰返すも解決できないため質問させてください。
PHPにて作成中のサイトがあり、本人確認の部分を依頼者の意向で、ユーザが自身の携帯番号を入力し、SMSメールに認証コードを送信して本人確認を行う流れを考えています。
流れ的には、
1.本人確認ページで、ユーザが自身の携帯番号を入力して送信ボタン。送信先は自社サイト内。
2.受け取ったデータ(携帯番号)、そして任意の番号を生成して、そのユーザのユーザ情報に保存(アップデート)。この時のデータは変数に格納。
3.外部サイト(SMS通信提供会社)へ携帯番号と認証番号を含んだメール本文をPOSTで送信。
4.メールを受け取ったユーザは、本人確認のページにある認証番号用フォームに入力・登録。
5.入力された認証番号を参照し、合致したら本人確認終了。
とこんなイメージですが、3の外部サイト(SMS通信サービス提供会社)側にデータを渡す(POST)すると、こちら側に戻ってこないという現象に突き当たります。(その会社の仕組みはデータを受取るだけのようです)
ちなみに、外部サイトへPOSTする仕組みは以下のようにしています。
<FORM NAME="formdata" method="post" action="https://example.com/"> <INPUT type="hidden" name="token" value="123456"> <INPUT type="hidden" name="message" value="{$text}"> <INPUT type="hidden" name="phoneNumber" value="{$number}"> </form>
話を戻しますが、このままだと外部サイトへデータを渡すだけとなってしまうので、バックグラウンドでPOSTできるような仕組みがあればと色々と探しているのですが、なかなか願った情報にたどり着けません。
お恥ずかしい話かもしれませんが、
exec("nohup php -c '' 'sms.php' 'number'> /dev/null &");
などのように、バックグラウンドで動かすべく、別ファイルに(sms.php)に上記 <FORM NAME="formdata" method="post~ を設置したりもしていますが、いずれも失敗で終わっています。
これまで調べた中で、ページ遷移をさせずに外部サイトにPOSTする方法は複数あるのだろうと想像していますが、ご教示頂ければと考え質問いたしました。
お忙しい中恐縮ですが、よろしくお願い申し上げます。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/10/19 13:11