PHPでタブレットを使って在庫管理システムを運用しているが
PHPソースを見るとほぼ使用する命令セットが限られているので一覧として記載しておく
1.セッション
各phpセットごとに
session_start();
session_regenerate_id(true);
通常はroutes.phpに記載
2.セッションの終了
$_SESSION=array();
if(isset($_COOKIE[session_name()])== true){
setcookie(session_name(),”,time()-42000,’/’);
}
@session_destroy();
3.セッションの定義
初回のviewで
if(!isset($_SESSION[‘xxxx’){
$_SESSION[‘xxxx’]= ”
}
4.セッション定義の破壊
unset($_SESSION[‘xxxx”]);
5.データの受け取り
if (isset($_POST[‘xxxx’])){
htmlspecialchars($_POST[‘xxxx’])
}
6.画面遷移
header(‘Location:routes.php?get=hain1_view’);
routes.php内で require “hain1_view.php”;
7.文字操作
strlen($tenkeysu) mb_strlen //文字の長さ
substr($barcd,0,2) mb_substr($barcd,0,2) //切り取り
mb_strpos ($indata,’:’); //何文字目にあるか
str_replace(‘:’,’.’,$_SESSION[‘time’]); //文字列置換
8.数字操作
intval floatval
number_format($hsu,3) //小数点3桁 3桁ごとに999,999表示
preg_replace(“/.?0+$/”,””,$su) //数字以外NG
floatval(str_replace(‘,’,”,$_SESSION[‘iniri’]))
9.switch(mb_strlen($indata)
{
case 1:
case 2:
処理
break;
default:
}
10.データベース操作
function insertdb(){
$msgdno=getSDNO(1);
$msg = $msgdno[0];
$dno = $msgdno[1];
$msgdno=getIONO(1);
$msg = $msgdno[0];
$inno = $msgdno[1];
$symd = setymdlong( $_SESSION['nyuymd']);
$dbh= connect_seisan();
//$dbh=new PDO($dsn,$user,$password);
//$dbh->query('SET NAMES utf8');
$dbh->beginTransaction();
if($msg =='')
{
try
{
$sql = "INSERT into KA_SIRHTA "
. "(CD,STCD,SYMD,KBN,......
. " VALUES "
. "("
. TCD,:SYMD,......
. ")";
$stmt = $dbh->prepare($sql);
$data = array();
$data[':CD'] = intval($_SESSION['hscd']);
$data[':STCD'] = 0;
$data[':SYMD'] = $symd ;
$data[':KBN'] = 10;
$data[':DNO'] = $dno;
........
$stmt->execute($data);
//$dbh=null;
}
catch (PDOException $e)
{
$msg = $e->getMessage();
}
}
if($msg =='')
{
try
{
$sql = "INSERT into KA_SIRDTA"
. " ("
. "CD,STCD,SYMD,KBN,DNO,EDA"
. "........
. " ) VALUES ("
. ":CD,:STCD,:SYMD,:KBN,:DNO,:EDA"
. ",.........
. ")";
$stmt = $dbh->prepare($sql);
$data = array();
// ":CD,:STCD,:SYMD,:KBN,:DNO,:EDA"
$data[':CD'] = intval($_SESSION['hscd']);
$data[':STCD'] = 0;
$data[':SYMD'] = $symd;
$data[':KBN'] = 10;
$data[':DNO'] = $dno;
$data[':EDA'] = 1;
$stmt->execute($data);
//$dbh=null;
}
catch (PDOException $e)
{
$msg = $e->getMessage();
}
}
if($msg=='')
{
$dbh->commit();
}
else
{
$dbh->rollBack();
}
$dbh=null;
return $msg;
}