アンケートの結果に基づいてリダイレクトされるフォーム送信があります。ランディング ページでは、関数を呼び出してクエリ文字列を処理し、データベースにクエリを実行して、ページ内処理用の配列として結果を返します。
function surveyResults() {
if($goodtogo) {
$survey = $wpdb->get_results(...,ARRAY_A);
$name_has_space = strpos(trim($q_name_field[0]),' ');
if($name_has_space === false) {
$q_first_name = $q_name_field[0];
$name_has_num = preg_match('/[0-9]/',$q_first_name);
$q_first_name = ((0 === $name_has_num) ? " ".ucfirst($q_first_name).", " : '');
} else {
$q_first_name = substr(trim($q_name_field[0]),0,$name_has_space);
$name_has_num = preg_match('/[0-9]/',$q_first_name);
$q_first_name = ((0 === $name_has_num) ? " ".ucfirst($q_first_name).", " : '');
}
$survey['name']['q_fname'] = $q_first_name;
$results = $survey;
} else {
$results = false;
}
return $results;
}
出力:
Array (
[0]=> Array (
'key' => 'value'
)
...
[n]=> Array (
'key' => 'value'
)
['name'] => Array (
[q_fname] => MyName
)
)
これは完璧ですが、ページをテストするたびに、$survey[0-n]
結果はクエリに応じて変化し$survey['name']['q_fname']
ますが、以前の値は保持されますMyName
。
unset($survey['name']['q_fname']);
設定後すぐに追加してみまし$results = $survey;
たが、違いはないようです。unset($results)
リファレンスを使用する必要がありますか? &$fname
...
ここで何が欠けていますか?
ありがとう