HEX
Server: Apache
System: Linux 4485441ca2e2 6.8.0-1039-aws #41~22.04.1-Ubuntu SMP Thu Sep 11 11:03:07 UTC 2025 aarch64
User: (1000)
PHP: 8.2.24
Disabled: NONE
Upload Files
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;
	}
	


}