タイトルの通りで、やり方をいろいろ調べておりました。
php、javascript、jQueryなど、いろんな方法が出てくるんですが。
その中で一番参考になったのは、
JavaScriptでURLのパラメータやアンカーを判断して処理を変更する方法 | Tips Note by TAM
https://www.tam-tam.co.jp/tipsnote/javascript/post9911.html
です。この方法でうまくいくと思ったんですが…できなかったんです。
開発コードとかもみて、
ReferenceError: "x" is not defined - JavaScript | MDN
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Errors/Not_defined
が出てきて、そのエラーも消えるようにファイルを編集してみたんですけど。
無理でした、phpファイルだったからでしょうか。
上のサイトで紹介されてるのはhtmlの時でしたし。自分のサイトのURLに"?"が含まれてたんで、いけると思ったんですが。
「どんな方法でもいいので」ということなので、元のコードを修正するのではなく、動くコードを提示します。
javascript です。
表示したいところに、以下を埋め込んでください。
<script> (function() { var m = /\bkey=(.*?)(&|$)/.exec(location.search); if (m) { var msg = ""; switch (decodeURIComponent(m[1])) { case "大阪": msg = "大阪でっせ"; break; case "広島": msg = "広島じゃけえ"; break; } if (msg != "") { document.write('<p class="message-by-key">' + msg + "</p>"); } } })(); </script>
PHP であれば、HTML を書く場所(<?php ~ ?>
の外側)です。
はてなブログに埋め込んだ記事を書いてみました。
以下、パラメータをつけたページへのリンク。
どんな方法でもいいので、
(1)URLが http://●●●/data.php?key=大阪
の時、Webページの真ん中あたりに「大阪でっせ」と出す。
(2)URLが http://●●●/data.php?key=広島
の時、Webページの真ん中あたりに「広島じゃけえ」と出す。
(3)URLが http://●●●/data.php?key=東京タワー
の時((1)(2)以外の時)、Webページの真ん中あたりには何も出さない。
といったサイトを作りたいです。
よろしくお願い致します。
■
JavaScriptでURLのパラメータやアンカーを判断して処理を変更する方法 | Tips Note by TAM https://www.tam-tam.co.jp/tipsnote/javascript/post9911.html です。この方法でうまくいくと思ったんですが…できなかったんです
大丈夫だと思うのですが、上記のサンプルは一部「jQuery」を使ってるので、jQuery組み込まないと上記の部分は動作しないですが、大丈夫ですか?
■
>どんな方法でもいいので、
PHPでよいのなら、こんな感じ。
<?php
$output_str="";
if(strcmp($_GET["key"],"大阪") == 0){ $output_str="大阪でっせ"; } if(strcmp($_GET["key"],"広島") == 0){ $output_str="広島じゃけえ"; }
//出力する echo $output_str;
※ReferenceError: ’x’ is not defined の「x」には、定義(JavaScriptから見て準備されて)いない関数などが表示されます。
開示できない場合は、ソースコードを問題の補足等に含めると回答が得られやすくなります。