勉強したことのメモ

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

  関連記事

MySQLiでSELECT文

MySQLiでSELECT文 ■データ +--+------+ | id | p ...

PHPでアクセスIPからランダム英数字のIDを作成

PHPで掲示板などにあるようなアクセスIPからランダム英数字のIDを作成したかっ ...

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

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

curlでPOSTデータ送信

ここで使ったcurlだけど補足とか諸々。 ■curlでPOST 並列処理する際に ...

google map apiとPHPを組み合わせて複数マーカーとウィンドウを連携させる

やりたかった事は、 mysqlから経度緯度、マーカー名、マーカーIDを持ってきて ...

PHP7が2015年11月にリリースされるらしい

PHP7で変わること ——言語仕様とエンジンの改善ポイント from Yoshi ...

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

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

当選確率が異なる抽選(ガチャ)をPHPで作成

ソシャゲのガチャみたいな、当選確率が異なる抽選をPHPで作成したかった。調べたと ...

PHPでaタグにnofollowを付ける

タイトルそのまま、リンクがあった場合に nofollowつけてくれ、というもの。 ...

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

DTIのVPSにPHPフレームワークのCodeigniterをインストールした。 ...