勉強したことのメモ

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

  関連記事

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

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

images
PHPでdo-while(0)の利点

社内のソースで do { //処理内容 if ($test) { break; ...

images
フォーム用テンプレPHP

<?php ini_set( 'display_errors', 0 ); ...

images
日付の比較で○日前というのを調べる

PHP及びjavascriptで日付の比較をしたく、締切日とかではなく ○日前と ...

images
preg_matchについて

PHPでのpreg_matchについて教わることがあったのでメモ。 ■参考サイト ...

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

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

images
PHPで画像にモザイクをかけて保存

やりたかった事はPHPで ・モザイク処理 ・元の画像とは別にファイル名をつけて保 ...

images
PHPで簡単にCSVファイルの生成

簡単にデータ並べるだけのCSVファイル生成。 file_put_contensで ...

msyql-image
MySQLiで直近に挿入したオートインクリメントの値と次回挿入する値を取得する方法

phpとmysqliを使っている中で次回挿入するオートインクリメントの値と、前回 ...

msyql-image
MySQLでのエラーについて

エラーログをとるようになってから色々エラーを 見る機会が出来てきたのでメモ。 プ ...