勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

CRUDのfunction化(処理ページ)

   2014/07/03  PHP

<?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で画像を上下反転させ保存する

やりたかった事は、下記の通り。 ・既にフォルダに保存されている画像を上下反転させ ...

SortableJSを使ってデータの並べ替え&保存

あるシステムを拝見した際にtableタグ内に並んでいる項目をドラッグ&ド ...

AjaxのJSONP使用でPHPで作った配列をJSに返す方法

AというサイトからBというサイトにAjax通信し、Bの方ではMySQLに接続して ...

jQuery.uploadでリアルタイムプレビュー

やりたい事は、 ・<input type="file">で画像を選択 ...

$_SERVER['PHP_SELF']に脆弱性あり

formのaction属性とかページングのリンクとかで、 <form ac ...