File: /var/www/html/wp-content/plugins/ganryu_shop/model/Abstract.php
<?php
class ganryu_shop_model_Abstract{
function tablename($name){
global $wpdb;
$prefix = $wpdb->prefix;
return $prefix.'_ganryu_shop_'.$name;
}
function lastId(){
global $wpdb;
return $wpdb->get_var('select LAST_INSERT_ID()');
}
function searchResult0(){
return array(
'totalcount'=>0,
'totalpage'=>0,
'curpage'=>1,
'pagenum'=>0,
'prev'=>0,
'next'=>0,
'list'=>array()
);
}
function searchLimit($pg, $num){
if ($num == 0) return "";
$st = ($pg-1) * $num;
return "limit $st, $num";
}
function searchResult($list, $pg, $num, $ct){
$totalpage = (int)(($ct-1)/$num)+1;
return array(
'totalcount'=>$ct,
'totalpage'=>$totalpage,
'curpage'=>$pg,
'pagenum'=>$num,
'prev'=>($pg > 1)?1:0,
'next'=>($pg < $totalpage)?1:0,
'list'=>$list
);
}
function sqlAttach($sql){
$sql = preg_replace_callback('/\[(\w+[^\]]*)\]/', array($this, "sqlAttachCallback"), $sql);
return $sql;
}
function sqlAttachCallback($m){
$com = $m[1];
$comar = preg_split('/ +/', $com, 2);
if (count($comar) != 2) return $m[0];
if ($comar[0] == "ymdhis"){
return 'date_format('.$comar[1].', \'%%Y%%m%%d%%H%%i%%s\')';
}
return $m[0];
}
function selectRow($sql, $bind=array()){
global $wpdb;
// $psql = $wpdb->prepare($this->sqlAttach($sql), $bind);
$psql = $this->sqlBind($sql, $bind);
$lasterror = $wpdb->last_error;
$res = $wpdb->get_row($psql, ARRAY_A);
if ($res === false){
return false;
}
if ($wpdb->last_error && ($lasterror != $wpdb->last_error)){
return false;
}
return $res;
}
function selectAll($sql, $bind=array()){
global $wpdb;
// $psql = $wpdb->prepare($this->sqlAttach($sql), $bind);
$psql = $this->sqlBind($sql, $bind);
$lasterror = $wpdb->last_error;
$res = $wpdb->get_results($psql, ARRAY_A);
if ($res === false || $res === null){
return false;
}
if ($wpdb->last_error && ($lasterror != $wpdb->last_error)){
return false;
}
return $res;
}
function query($sql, $bind=array()){
global $wpdb;
// $psql = $wpdb->prepare($this->sqlAttach($sql), $bind);
$psql = $this->sqlBind($sql, $bind);
$res = $wpdb->query($psql);
if ($res === false){
return false;
}
return true;
}
function sqlBind($sql, $bind){
$binder = new grys_sqlbinder($sql, $bind);
$sql = $binder->prepare();
return $sql;
}
function lastError(){
global $wpdb;
return $wpdb->last_error;
}
}