勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

CRUDのfunction化(処理ページ)

      2014/07/03

<?php
//エスケープ用htmlspecialchars
function h($str){
    return htmlspecialchars($str,ENT_QUOTES,"UTF-8");
}

//エスケープ用mysql_real_escape_string
//将来のバージョンで削除される予定らしいのでPDO勉強しておく必要あり
function m($str){
    return mysql_real_escape_string($str);
}

//作成
function Create($isbody){
$sql = '
INSERT INTO
form (isbody)
VALUES ("' . m($isbody) . '");
';
$row=mysql_query($sql);
header("Location: ./index.php");
}

//読み出し
function Read(){
$sql = '
SELECT *
FROM form;
';
$row = mysql_query($sql);
while($result = mysql_fetch_array($row)){
echo '
<tr>
<td>
' , $result["seq"] , '
</td>
<td>
' , h($result["isbody"]) , '
</td>
<td>
' , $result["istime"] , '
</td>
<td>
<input type="button" value="削除" onclick="return delete_check(',$result["seq"],')">
</td>
<td>
<input type="button" onclick="location.href=\'index.php?mode=change&seq=' . $result["seq"] . '\'" value="編集">
</td>
</tr>
';
}
}

//更新
function Update($seq,$isbody){
$sql = '
UPDATE form
SET isbody = "' . $isbody . '"
WHERE seq = ' . $seq . ';
';
$row = mysql_query($sql);
}

//削除
function Delete($seq){
$sql = '
DELETE FROM form
WHERE seq = ' . $seq . ';
';
mysql_query($sql);
header("Location:./index.php?mode=delete2");
}

//モード制御
function Mode($mode,$isbody,$seq) {
if ($mode == "registration") {
Create($isbody);
} elseif ($mode == "delete") {
Delete($seq);
} elseif ($mode == "change") {
Change($seq);
} elseif ($mode == "update") {
Update($seq,$isbody);
}
}

//編集内容呼び出し
function Change($seq){
$sql = '
SELECT *
FROM form
WHERE seq = ' . $seq . ';
';
$row = mysql_query($sql);
while($result = mysql_fetch_array($row)){
$isbody_value = $result["isbody"];
}
return $isbody_value;
}

//編集内容表示
function Isbody_value($seq,$mode) {
if ($mode == "change") {
$str = Change($seq);
echo h($str);
}
}

//hiddenの切り分け
function Hidden_value($mode) {
if (!isset($mode) || $mode == "delete" || $mode == "delete2" || $mode == "update") {
echo "registration";
} else {
echo "update";
}
}

//submitの表示切り分け
function Submit_value($mode) {
if (!isset($mode) || $mode == "delete" || $mode == "delete2" || $mode == "update") {
echo "新規作成";
} else {
echo "編集";
}
}

//処理後の表示
function Display($mode) {
if ($mode == "update") {
echo '<font color="red">編集が完了しました。</font>';
} elseif ($mode == "delete2") {
echo '<font color="red">削除が完了しました。</font>';
}
}

 - PHP

  関連記事

PHPでif文とswitch文

ずっとif文を使っていたけどswitch文の方が速いみたい。 あとずらずら~とi ...

PHPファイルを解析する時に役立つ関数

初めて見るファイルに対して読み解くのに 役立つ関数が3つあったのでメモ。 get ...

PHPで文字のあいまい検索(文字のゆれ)

googleとかで検索する際に、ちょっと間違えて 入力してしまっても「もしかして ...

PHPでログファイルから指定行数表示させる

エラーログを最新分から指定行数表示させる プログラムがあって、どういった作りにな ...

smart_resize_imageで縦横の比率関係なく、固定リサイズ

PHPで縦横どちらかが指定の長さを超えた場合、比率を保ったままリサイズで使ったs ...

CodeIgniterでログをファイルに出力する

Codeigniterで何らかのエラーが発生した際に分かりやすい形でファイルに情 ...

PHPでソーシャル(SNS)ログインする方法2018

久しぶりにソーシャル(SNS)ログインを実装する機会があった。以前に対応方法を書 ...

PHPで値が空の配列を削除

やりたかった事は配列でキーは入っていて値が入っていない ものを削除したかった。 ...

ユーザーエージェントからブラウザ名、バージョン、OS名判別

/***判別側***/ //ブラウザ情報の取得 function browser ...

DTIのVPSにCakePHPを導入する方法

他社さんと連携して仕事をする際に「フレームワーク何か使いますか?」と聞かれて「使 ...