カテゴリー別ページが理解できれば、同じ要領でアイテム別ページは簡単に出来ます。
クエリで受け取ったアイテムIDをキーにitem.csvからデータを抽出します。抽出したデータを変数に収め、それをHTML内に配置していきます。
プログラムのご使用による損害は直接、間接に関わらず一切の責任をもちません。ご使用は自己責任でお願いします。
僕が使っているサーバーとドメイン管理のレジストラーです。
§アイテム別ページを作る
カテゴリー別ページが理解できれば、同じ要領でアイテム別ページは簡単に出来ます。
繰り返し使う処理は自作関数を作ろう
クエリで受け取ったアイテムIDをキーにitem.csvからデータを抽出します。
抽出したデータを変数に収め、それをHTML内に配置していきます。
require_once('common.php'); //解説(1)
$ID=$_GET['id'];
$Data=file('item.csv');
for($i=0;$i<sizeof($Data);$i++){
$line=explode("‚ "‚ $Data[$i]);
if($line[0]==$ID){
$Cid=$line[1];
$ImageLink=DeleteEsc($line[2]); //解説(2)
$TextLink=DeleteEsc($line[3]);
$PageTitle=strip_tags($TextLink); //解説(3)
$Price=number_format($line[4]); //解説(4)
$Comment=$line[5];
braek;
}
}
?>
※長くなるので以降はサンプルをダウンロードしてください。
解説(1)
ローテーションバナーの項でも説明しましたが、管理画面のフォームから入力した文字列にエスケープ文字が付加されることがあります。
これは表示側で処理するしかありません。
(※前のページのcat.php 説明用コードでは処理していません。修正済みコードは下記のサンプルをDLしてください。)
こういった同じ処理を繰り返しする場合、自作関数を作っておきます。
自作関数は外部ファイル化したライブラリーを作っておくと異なったファイルにも使いまわし出来ます。
ライブラリーを読み込むときはrequire_once(またはinclude_once)で読み込みます。
common.php (関数ライブラリー)
/*
DeleteEsc
エスケープ文字を削除する自作関数
*/
function DeleteEsc($Ad){
$Ad=str_replace("\\"‚ ""‚ $Ad);
$Ad=stripslashes($Ad);
return $Ad;
}
?>
解説(2)
自作関数DeleteEscを使ってエスケープ文字を処理します。
解説(3)
ヘッダー内の
ヘッダー内ではリンクタグが使えないのでstrip_tags関数を使いHTMLタグを削除します。
解説(4)
CSVファイル内ではカンマを使うことが出来ません。
価格表示をカンマで3桁区切りにしたい場合一旦カンマなしで入力し表示のときにnumber_formatを使います。
サンプルにはすべてのファイルを収録しています。
プログラムのご使用による損害は直接、間接に関わらず一切の責任をもちません。ご使用は自己責任でお願いします。