2012年04月04日
講義041日目
------------------------------1H------------------------------
★管理画面
●コメント一覧ページを作成する
・generatePager関数を実行するために、
admin/comment_list.php
のsql文部分を書き換える
DbWrapper::dbChoice();
$sql = "SELECT count(*) FROM comment";
$result = mysql_query($sql);
$row = mysql_fetch_row($result);
//generatePager関数を実行すると、pagerを形作るのに必要な要素が配列で帰ってくる
$pager = myUtil::generatePager(10,$row[0],$_GET["page"],"","/bbs/admin/");
$smarty->assign("pager", $pager);
$sql ="SELECT * FROM comment ORDER BY created_at DESC LIMIT ".$pager["num_s"].",".$pager["num_e"];
------------------------------2H------------------------------
★管理画面
●テンプレートからテンプレートを呼び出す
comment.tplを書き換える
<div class="pager">
{include file="pager.tpl" pager=$pager}
</div>
●コメント削除実装
member_delete.phpと
member_delete.tplを参考に
comment_delete.phpと
comment_delete.tplを編集
・コメントの削除と同時にコメントにひも付いたreplyレコードも消去するロジックを組み込んでみる
DbWrapper::dbChoice();
//クエリを送信する
$id = $_GET["id"];
$sql = "SELECT count(*) FROM reply WHERE comment_id = '".$id."'";
$result = mysql_query($sql);
$row = mysql_fetch_row($result);
if($row[0] >0){
$sql = "DELETE comment,reply
FROM comment,reply
WHERE comment.id =reply.comment_id
AND comment.id ='".$id."'";
}else{
$sql = "DELETE FROM comment WHERE id ='".$id."'";
}
mysql_query($sql);
------------------------------3H------------------------------
★管理画面
●コメント編集機能を追加する
・/bbs/tmp作成
・/bbs/admin/comment_edit_input.php
編集のためにimgフォルダの画像をtmpフォルダにコピーする
・copy()
第一引数の値を第二引数にコピーする関数
------------------------------4H------------------------------
★管理画面
●コメント編集機能の追加
・/bbs/admin/templates/comment_edit_input.tpl
------------------------------5H------------------------------
★管理画面
●コメント編集確認画面
・/bbs/admin/templates/comment_confirm.tpl
・/bbs/admin/comment_confirm.php
//アップロードされたファイルがある場合(新規or更新)
if(is_uploaded_file($_FILE["photo"]["tmp_name"])){
session_regenerate_id();
$tmpname ="photo_" .
session_id() .
myUtil::getFileExt($FILES["photo"]["tmp_name"]);
$smarty->assign("tmpname". $tmpname);
copy($FILES["photo"]["tmp_name"], "../tmp/".$tmpname);
$_SESSION["tmpphoto"] = "../tmp/".$tmpname;
//画像が存在しない、あるいは変更がない場合
}else{
$smarty->assign("tmpname", $tmpname);
}
------------------------------6H------------------------------
★管理画面
●コメント編集完了画面
・/bbs/admin/comment_edit_result.php
・/bbs/admin/templates/comment_edit_result.tpl
-----------------------------memo------------------------------
タイプミスがやべー
0 件のコメント:
コメントを投稿