9/07/2024

ルートディレクトリから始まる完全なパスの調べ方

 まあドキュメントルートがわからなくても、PHPでエラーになればエラー箇所がどこにあるか、ルートディレクトリから始まる完全なパスを表示してくれるからそれでわかるのだが、事前に調べるコトももちろんできる(余りちゃんと事前に調べたことはないがね)

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8" />
<title>パス表示</title>
</head>
<body>

<p>現在のスクリプトのディレクトリパスを表示</p>

<?php

echo __DIR__;

?>

<p>サーバのドキュメントルート(ルートディレクトリ)を表示</p>

<?php

echo $_SERVER['DOCUMENT_ROOT'];

?>

</body>
</html>
いや、HTMLにする必要は実際無くて、PHPの部分だけで十分なのだが、こうして並列して表示した方が違いがわかり易いのでね
ちなみにこのHTMLファイルをWEBのトップディレクトリに置けば、どちらも同じパスが表示される

それにしても「サーバの中身を扱うには、やはりPHPだよな」と2024年になっても思ってる自分はもうWEBの最先端からは遠いよな・・・

PythonのFlaskやDjangoなんかのフレームワーク使うのが一般的になるのは、近年のPython人気とそれに比してPHPの凋落ぶりからして、目前な気がする



ヨユーが出来たら、この辺をやってみようか・・・

9/06/2024

サーバ内の画像一覧をブラウザで表示する

 サーバ内にある画像の一覧をブラウザから閲覧出来て、その際には画像のサムネイルと画像名が表示されて、画像をクリックすれば元のサイズで表示できるとなれば便利だろうと考えて、PHPでプログラム部分を書いて、こんなHTMLファイルをアップ

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8" />
<title>画像一覧</title>
</head>
<body>

<p>画像一覧</p>

<?php

// ディレクトリ名(アップロード先に書き換える)
$dir_name = dir("/ルートディレクトリの完全なパス/gazo");
$url = ("https://ドメイン/gazo/");

// ディレクトリ内の画像を表示する
while($file_name = $dir_name->read()){
    $path = $dir_name->path . "/" . $file_name;
    if (@getimagesize($path)){
        echo "<a href=\"$url" . $file_name . "\" target=\"_blank\">";
        echo "<img src=\"$url" . $file_name . "\" height=\"150\"></a> ";
        echo "<p>$file_name</p>";
    }
}
$dir_name->close();

?>

</body>
</html>
これを画像がアップロードされてるディレクトリに置いて、URLをブラウザから開くと・・・


画像をクリックすると元画像が別タブで開く


HTMLで作成してあるので、CSSで見栄えよくしたら、サイトの1ページとして成り立つだろう

9/05/2024

画像の整理でまず拡張子を統一する

 JPGとjpgが混在してると、プログラムで拾うのがメンドウだし、そもそもファイル名は基本的に全部小文字としておいた方が、間違える心配がなくていい

そこで変換バッチを使う
ren *.JPG *.jpg
エディタに上記のように書いて、例えば henkan.bat などと名前を付けて保存
これをJPGとjpgが混在してるフォルダに置いて、ダブルクリックすればすべてのファイルの拡張子が.jpgに統一される

【BEFORE】

  ↓↓↓

【AFTER】

但し、瞬間には変わらず、一旦、フォルダを閉じて開き直すと変わってる

9/04/2024

メディアクエリでモバイル表示対応

 「本の旅」サイトはモバイル用の表示が酷い


右に寄っちゃってるし、横スクロールしないと読めぬ
幅が768px以下のブラウザでは、100%表示になるようにしよう

HTMLの構成がこんなで・・・
<!DOCTYPE html>
<html lang="ja">

<head>
    <link rel="stylesheet" href="hon-dana.css?<?php echo filemtime('hon-dana.css'); ?>" type="text/css">
</head>

<body>

<article>

    <header>

        <h1>本の旅</h1>

        <nav>
        目次
        </nav>

    </header>

    <section>

    </section>

    <footer>

    </footer>

</article>

    <script src="hon-dana.js"></script>

</body>

</html>
CSSでメディアクエリだな、article(本文部分)がブラウザの幅768px以下の表示に100%を指定
article {
    width: 768px;
    margin: 0px auto;
    padding: 0px;
    background: #fff;
    text-align: center;
}

@media (max-width: 768px) {
    article {
        width: 100%;
    }
}
で、100%表示されるようになった


それと背景色も真っ白(#fff)だったのを#e0f7ffに変更した

9/03/2024

「本の旅」サイトの引越し

昨年、よく考えずにhon-no-tabi.siteなんてドメインとって、「本の旅」なるサイトを新たに作ったのは、最終的に本に関するサイトをそこに統合する目論見があった


しかし、ちゃんとしたサイトに作り過ぎたせいで、更新がメンドウになってしまい、放置気味になってたし、ここは殆どアクセスが無かったので、今回、ドメイン解約して、サイトは新しいドメイン下に引っ越すコトにした

ついでに放置してるサイトも新しいドメイン下に持ってきて、要は2つのサイトを融合させてしまおうかなんて思いついたが、ふとGoogle Search Consoleを確認してみると、以外とアクセス数は多いのだった!




以前は確かにこのサイトからアマゾンでポチッとしてくれる方がいたので、まあそこそこアクセスはあるのかと思ってはいたが、今年はもうアマゾンのアフィリエイトリンクの画像が仕様変更で全部消えてしまい、貼り直してもいないからアマゾンからの収益は限りなく0に近くなったので、アクセス自体も減ったのだと思ってたがそうでもなかった!!

そうするとむやみに動かさずに、同じディレクトリ(URL)のまま、リンクの張り直しした方が良さそうな気が・・・

そして「本の旅」だけ無事に引っ越しを終えたが、このサイトモバイルファーストじゃなかったのだな、CSS書き換えなきゃ~

9/02/2024

「サイト引っ越しました」のお知らせはどう出す?

「ホームページ〇〇は引っ越しました」というお知らせを出したコトがある人、昔ならmetaタグに以下のように書いてたであろう、かくいう自分もそう
<meta http-equiv="refresh" content="30;URL=https://hachikuma.tan-deki.com/">

URLの前にある30は30秒って意味で、30秒待ってると自動的に新しいURLが開くけど、たいていはそこでじっと待たずにサイトに表示されてるリンクから開くよね




bodyタグにJavaScriptを書く方法もある
<body onload='setTimeout(function(){
    location.replace("https://hachikuma.tan-deki.com/");
}, 3000);'>
この場合は3秒後に自動的に新しいURLを開こうと思ったら3000(ミリ秒)だ

サーバによっては.htaccessで飛ばすのも可能だが、そうするとユーザは旧サイトのページは開かずに新しいサイトが開いてしまうので、新しいURLになってるとは気付きにくいと思われ

9/01/2024

デザインが決まるまでCSSファイルの更新日時を反映させておくPHP

全部を1つのドメイン下に置こうと思うが、まず1番大変なのはhachikumaの引っ越しだな

https://hachikuma.tan-deki.com/

index.htmlを開いて、とりあえずCSSを以下のように書き換える
<link rel="stylesheet" type="text/css" href="hk.css?<?php echo filemtime('hk.css'); ?>" media="screen">
こうしておけば、CSSを書き換えてアップする度にその更新日時(filetime)を拾ってくるので、確実に再読み込みをしてくれるのだが、そうでないと頑固にキャッシュを表示するのでね


そしてデザイン(という程のモノではないが)に丸1日かかって、先月分までの写真もアップしたのは今朝・・・


8/31/2024

HTMLもPHPもJavaScriptもAIに吐き出させたら楽ちんよ♪

 もう1つのサーバはいくらなんだろうか?


こっちはワリと最近契約してて、最初から月額千円と考えてたので予想通りの金額ではあるが、それにしても少しづつ値上がりしてるんだな・・・

加えて、ドメインが1つ5千円以上になったから5つもあったら年間で3万円近くも支払ってるコトになるが、ドメインこそ無駄だ

自分のは3つから1つに絞って、全然使ってなかったドメインを活かそう

一応、そのためのディレクトリはあって、.htaccessが置いてある

AddHandler php7.4-script .html

hetemlサーバの場合、これでhtmlファイル内でPHPが使えるのだ 

ChatGPTにトップページのHTMLを吐き出してもらおう
「新しくサイトを作成するのでトップページのHTMLをお願いします」

<!DOCTYPE html>
<html lang="ja">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>サイトのタイトル</title>
    <link rel="stylesheet" href="styles.css">
</head>

<body>
    <header>
        <nav>
            <ul>
                <li><a href="#">ホーム</a></li>
                <li><a href="#">サービス</a></li>
                <li><a href="#">お問い合わせ</a></li>
                <li><a href="#">会社概要</a></li>
            </ul>
        </nav>
    </header>

    <main>
        <section id="hero">
            <h1>ようこそ、私たちのウェブサイトへ!</h1>
            <p>ここにサイトのメインメッセージやキャッチコピーが入ります。</p>
            <a href="#" class="btn">詳しくはこちら</a>
        </section>

        <section id="services">
            <h2>サービス内容</h2>
            <div class="service-item">
                <h3>サービス 1</h3>
                <p>サービス1の説明文がここに入ります。</p>
            </div>
            <div class="service-item">
                <h3>サービス 2</h3>
                <p>サービス2の説明文がここに入ります。</p>
            </div>
            <div class="service-item">
                <h3>サービス 3</h3>
                <p>サービス3の説明文がここに入ります。</p>
            </div>
        </section>
    </main>

    <footer>
        <p>&copy; 2024 サイトの名前. All rights reserved.</p>
    </footer>
</body>

</html>
このままアップしてみた


これを自分用に書き換えて、PHPが使えるのか実験


年齢は誕生日を迎える度に勝手に書き換えてくれるように以下PHP
<?php echo floor((date('Ymd') - 19680820)/10000);?>
ちなみにその下の生まれてから何日目かってのはJavaScriptだが
こういうのは今はChatGPTが吐き出してくれるから楽だわ♪

8/30/2024

某レンタルサーバとの決別

サーバ代が月額300円だったから始めたはずが、気が付いたら6カ月で5,610円も払ってる?!


しかも半年で3千円以上になったのは2019年なので、この数年でも倍近くになってるが、最初からしたら3倍以上の金額になってる・・・酷い

サーバ2つあるから、解約しようと決意!

9月中に解約だ!! 

まずは中身を全部ダウンロードしてしまい、紐づいてるドメインも解約だ
そしてもう一つのサーバにアップし直すかどうかは、吟味してアップし直す際にPHP依存な作りはやめて、JavaScriptで代用できそうな部分は差し替えよう

もうサーバのPHPのVer.のために移行するのとか疲れたわ・・・

8/29/2024

CPIサーバにPEARをインストール

もうPEAR使ってる人いないだろうて、ページを下書き状態にしたら、Google Search Consoleからエラー出て面倒だから、一応公開しとくが記事は消した