[PHP]フォルダ名で指定してデータベースを呼び出す方法

ホームページをPHPで自作する備忘録です。

フォルダ名の抽出

①「$fld」にURLを読み込ませます。
$fld = $_SERVER[‘REQUEST_URI’];
$fldには呼び出しているページURLが入ります。

②ファルダ名だけを抽出し「$fold」に放り込みます。
$folder=basename($fld)

③実際に入っているかどうか確認してみると良いと思います。
<?php echo $folder; ?>

データベースの構成と呼び出し

①データベース要素にフォルダ名を用意します。
<例>
|id|neme|folder|age|
|1|○○花子|hanako|24才|

②データベースを呼び出します
$sql = “SELECT * FROM データベース名 WHERE folder =’$folder'”;
$stmt = $dbh->query($sql);
foreachがfetchで代入変数に取り出します。

 

indexのような特別ページの回避

$fld = $_SERVER[‘REQUEST_URI’];
(※$fldには’/folder-name/’が入りました)
$index= ‘/folder-name/’;
if ($fld == $index){
$folder= ‘index’;
}else{
$folder = basename($fld);
}

indexの名前が唯一無になので比較演算子で回避しました。非常に単純で恐縮です。