2017-10-29 19 views
0

誰かが喜んで私のメールハンドラファイルで変数を使用してPHPヘッダリダイレクトを動的に更新する方法を理解できます。PHPヘッダー変数を使用したリダイレクト

私はPHPのメールハンドラ内で使用していた何を:

header('Location: filename.php); 



私が実行しようとしました何:

フロントエンドは、ファイル

$tyTarget = "filename.php" 

<input type="hidden" name="redirDestination" value="<?php echo $tyTarget ?>" /> 

PHPメールハンドラ

$thankYou = $_POST['redirDestination']; 

header('Location: $thankYou'); 



背景:私はいくつかのランディングページをテンプレート化しています

。彼らは私たちが内部的に使用するいくつかの隠された入力を渡す標準的なHTMLフォームを使います。歴史的に、各ランディングページには独自のPHPメールハンドラがありました。ヘッダーリダイレクトを使用して、独自の感謝のページ(thank-you-facebook.phpまたはthank-you-email.php)各ソースのコンバージョントラッキング

複数のページを統合し、いくつかのPHPを使用する作業には、テンプレートを簡略化するために、変数からリダイレクトターゲットを動的に読み込む機能がありませんでした。

リダイレクトに構文エラーがありますか?

何か助けていただければ幸いです。 PHPのnoob。正しい答えは緩くにおける単一引用符に関する質問に沿って落ちたので、重複した質問として、このフラグを立てる、投稿する前に、この質問に対する答えを探してしばらく過ごした誰かとして
:重複した質問フラグあたり

更新PHPが答えを見つける手助けをしてくれなかったでしょう。言い換えれば、問題は異なっていて重複ではありませんでした。答えとして受け入れられた解決策は、まったく同じように起こった。

+1

'header( 'Location:$ thankYou');'は一重引用符を使用しています。 'header( 'Location:'。$ thankYou);' – IncredibleHat

+1

または 'header(" Location:$ thankYou ");' – nogad

+0

@nogadもうまく動作します!私は個人的には、PHPが変数とコードの文字列全体を解釈しようとしているので、二重引用符から変数を取り除いてしまいます。 – IncredibleHat

答えて

1

コードの貼り付けから判断すると、問題は単純な構文です。あなたは次のものを持っています:

header('Location: $thankYou'); 

これは、変数を一重引用符で囲んでいます。

header('Location: '. $thankYou); 
+0

これは絶対に動作します。私はタイマーが立ち上がるとすぐに答えのクレジットを与えます。 この場合、二重引用符と一重引用符の違いを理解できません。私は本に戻って私が何を思いつくのか見てみましょう。しかし、あなたが共有したいと思っている高水準の洞察力を持っているなら、私はこれを理解しようとしています。 =)。 – sforcash

+1

@sforcashいくつかの光の読書:http://stackoverflow.com/questions/3446216/what-is-the-difference-between-single-quoted-and-double-quoted-strings-in-php – nogad

+0

@nogadまさに私探していたありがとう。 – sforcash

関連する問題