KENT-WEB サポートコーナー 過去ログ [ 0154 ]


記事No: 14126
投稿日: 2015/07/26(Sun) 23:18:28
タイトルpostmail確認画面からphpへpost
ID情報: tomit28
投稿者: tomi
URLhttp://islandloop.net/wptest/

postmailの確認画面について質問させてください。
postmail の確認画面で送信ボタンを押すとform内容がメール送信されますが、そのデータを同時にphpプログラムへpostしてデータベースへ登録したいと思っています。
javascriptを利用してcgiとphpにpostしています。
inputタグを見ると下記のようにvalueの日付が暗号?のようにになっています。php側では2015/07/26のように復元できないのでしょうか?

<input type="hidden" name="開始日" value="MjAxNS8wNy8zMA==" />

このようにcgiとphpへpostしています。
<input type="submit" value="送信する &gt;" onClick="send(this.form)" class="button" />

<script>
function send(rsvfrm){
rsvfrm.action = "../../wptest/wp-content/plugins/weekly-reservation/weekly-reservation.php";
rsvfrm.submit();
rsvfrm.target = "_self";
rsvfrm.action = "!mail_cgi!";
rsvfrm.submit();
}
</script>


記事No: 14127
投稿日: 2015/07/27(Mon) 03:21:46
タイトルRe: postmail確認画面からphpへpost
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

問い合わせフォームの確認画面ではデータがすべてhex_encodeされているので、
受け取った際にhex_decodeして戻してやればいいはずですが、
"MjAxNS8wNy8zMA=="
というのはhex_encodeされたものではなさそうですね。
この状態で送信してメールは正しく届いているのでしょうか。


記事No: 14129
投稿日: 2015/07/27(Mon) 11:58:27
タイトルRe^2: postmail確認画面からphpへpost
ID情報: tomit28
投稿者: tomi
URLhttp://islandloop.net/wptest/

> 問い合わせフォームの確認画面ではデータがすべてhex_encodeされているので、
> 受け取った際にhex_decodeして戻してやればいいはずですが、
> "MjAxNS8wNy8zMA=="
> というのはhex_encodeされたものではなさそうですね。
> この状態で送信してメールは正しく届いているのでしょうか。

返答ありがとうございます、
hex_encodeというものがあるのですね、調べてみます。
メールは正常に送信できます。


記事No: 14130
投稿日: 2015/07/28(Tue) 10:18:20
タイトルRe^3: postmail確認画面からphpへpost
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

>メールは正常に送信できます。
メールが正常に届いているということなら、メール送信前のhex_decodeで
正常にデコードされているということなので、そのタイミング(sub send_mail内)でPHPに分岐してやれば
デコード済みのデータを送れそうですが、分岐方法はちょっとわからないです。

確認画面の送信ボタンを押したときに分岐するなら、データを受け取ったPHPでpostmail.cgiで行われているhex_decodeと同じ処理を
行えば元のデータに戻せるはずです。
postmail.cgiでは
sub hex_decode {
my $str = shift;
$str =~ s/\t/\n/g;
$str =~ s/([0-9A-Fa-f]{2})/pack('H2', $1)/eg;
return $str;
}

という関数ですが、PHPだと

hex2bin()

だけで済みそうです。


[検索ページ] [掲示板]