アドセンス広告は、レスポンシブ広告でほぼほぼよいが、不満があったので、表示する画面サイズによって、出力する広告のサイズをきっちり固定することにした。
広告のサイズについては、下記。
アドセンス広告は、レスポンシブ広告でほぼほぼよいが、不満があったので、表示する画面サイズによって、出力する広告のサイズをきっちり固定することにした。
広告のサイズについては、下記。
phpで画面遷移なしにフォーム入力からDBのデータを取ってくるプログラムの表示側。
$op = filter_input(INPUT_POST, 'select_league');
if ($op === '---') {
echo 'エリアが選択されていません。<br>';
} else {
echo 'エリアid:' . $op . '';
}
echo "
<form method='post' action=''>
<select name='select_league'>
<option value='---' selected>エリア選択</option>
<option value='1'>選択肢のサンプル1</option>
<option value='2'>選択肢のサンプル2</option>
<option value='3'>選択肢のサンプル3</option>
<option value='4'>選択肢のサンプル4</option>
<option value='5'>選択肢のサンプル5</option>
<option value='6'>選択肢のサンプル6</option>
<option value='7'>選択肢のサンプル7</option>
</select>
<input type='submit' value='検索'>
</form>";
actionで、空にすると自分に遷移する。filter_input()は、PHP8から出るエラーを防ぐために必要。filter_input()の戻り値は、初回はNULLが入る。二回目からは、選択されたものが入る。
アクセスカウンタでbotを除きたいので、いろいろ試行錯誤してみた。
上記リンク先のようにすればいいけど、今はstr_contains()を使ったほうがいいということなので、少し変えてみた。
$_SERVER[‘HTTP_USER_AGENT’];に変わって、gethostbyaddr($_SERVER[‘REMOTE_ADDR’]);でIPアドレスをホスト名にして、ボットかどうか判別。ボットだと思われるものはarray関数に追加する形にしました。ボットならtrue,ボットではないならfalseが返る。
function isBot(){
$ua = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$bot_arr = array(
"applebot"
,"ahrefs.com"
,"googlebot"
,"msnbot"
,"rate-limited-proxy"
);
foreach ($bot_arr as $bot_value) {
if (str_contains($ua, $bot_value)) {
return true;
}
}
return false;
}
とりあえず、これで運用してみます。
font awesome6をscssで使ってみたら、正しく理解してないところがあった。とりあえずダウンロード。今日現在は、6.4.0だった。
下記のサイトの通りであるが、分かりにくかったところ。
https://qiita.com/sota_shimizu/items/8746aaf0c2d29bcba6e2
ポイント
$fa-font-path:”../webfonts”;と書かれているが、実際にcssファイルが置かれているところからwebfontのパスが違えば変更すること。_variables.scssに書く必要もない。
index.htmlファイルはこんな感じ。
scssファイルはこんな感じ。cssファイルからwebfontsへのパスを正しく書く。疑似要素の書き方は、以前とさほど変わらず。
index.htmlのフォルダ構成はこんな感じ。cssファイルも同じフォルダに置いた。webfontsファイルは、ダウンロードしたfontawesomeファイルにあるので、コピーした。
index.htmlファイルを開いてみます。
無事、font awesome6のアイコンが反映されてました。unicodeを使っても、アイコンが反映されてました。
それから、_variables.scssの不要なところを削除すると、作られるcssファイルが軽くなります。