質問: やりたいことは下記のように表示したいです http://dev.example.com/complet/?serviceid=test-1, test-2, test-3 下記のようにcheckboxでチェックされた項目が送信ボタンを押すと完了画面でname="info[data][]"には data="test-1"のデータが入力されて完了画面のurlで表示されるようにしたいです。誰か教えてくださませ! ``` test-1 test-2 test-3 ```
回答: > > valueとは違うものを取得したいです。 > > > ``` $dd = get_field('test_salesforce', 'option'); $Url = "http://dev.example.com/complet/?seminarid=" . $_post["data"].;; $dd = str_replace('{$URL}', $Url, $dd); ``` PHP的には$_postではなく$_POSTが正しいです。 (あと`.;;`では構文エラー、`'{$URL}'`では変数展開できないし変数は大文字小文字大別するので何がしたいのかもはやわからない処理になっている) いずれにしてもnameとvalue以外をフォーム送信したいのでしたらJavaScriptで別途疑似的にname:valueを作って送信するしかありません。 PHPで受け取れるのはname=>valueの情報だけであり、そもそも送信された元のinputが何か(textとかradioとかselectとか)すらフォームは送信しないので判断はできません。 フォームで送信できるのはname=>valueの「データ」です。 data属性はあくまで単なる属性です。(しかもカスタムなので命名は自由) 流れの例としては下記 submitボタン押す→submit止める→data属性の情報をformにappend→submit()→完了画面で$_POSTで受け取る