[ad_1]
vBulletin で使用されていたいくつかの URL をリダイレクトしようとしていますが、PHP コードを動作させることができません。
URL p 値に数値が含まれている場合は、それを t 値に渡したい – その部分は正常に動作し、
しかし、p 値が 724166 に等しい場合、$forum 値を 2330 に変更したいと考えています。
その部分は機能しません。
私がやりたいことは次のとおりです。
着信 URL に p=724166 が含まれている場合
次に、$forum を 2330 に変更し、t=2330 を出力するようにします
しかし、その if ステートメントは何らかの理由で機能しませんか???
私が試したこと:
<?php if (!empty($_GET['p'])) { $forum = (int) $_GET['p']; if ($forum = 724166) {$forum = 2330} header('HTTP/1.1 301 Moved Permanently'); header('Location: http://hundredbling.net/viewtopic.php?t=' . $forum); } ?>
<?php if (!empty($_GET['p'])) { $forum = (int) $_GET['p']; if ($forum == 724166) {$forum = 2330} header('HTTP/1.1 301 Moved Permanently'); header('Location: http://hundredbling.net/viewtopic.php?t=' . $forum); } ?>
これらのいずれかを試すと、出力は通常同じです
Utopia - Information
t=2330 に変更されない理由がわかりません。また、最後に .0 が追加される理由もわかりません。
解決策 1
if ($forum = 724166)
確かに、あなたは == ではなく = を意味します。
[edit]
重要な情報で質問を更新したので、答えは、724166、2330 などを数値ではなく文字列として扱う必要があるということです。 $forum が数値ではなく文字列型になるように、それらを引用符で囲みます。
[/edit]
[ad_2]
コメント