/** * php的类成员其实并无明显的动静态之分,所有成员在没明确声明的情况下都会被当成静态成员存放在特定的内存区<br> * 如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近1倍。<br> * * @param unknown $sql */ public static function excute($sql) { //echo $sql." dfdlfkdlkfdmfkdlj"; include_once 'Config.php'; $conn = Config::connect(); $result = mysqli_query($conn, $sql); mysqli_close($conn); return $result; }
function upload() { if (isset($_SESSION['CURRENT_LOGIN_ID'])) { require_once 'class/Config_commodity.php'; require_once 'class/Injection.php'; require_once 'class/Config.php'; $conn = Config::connect(); $course_or_reward = 1; if (isset($_REQUEST['course_or_reward'])) { $course_or_reward = $_REQUEST['course_or_reward'] == 'skill' ? 1 : 2; } $commodity_message = array(Config_commodity::course_or_reward => (int) $_GET['course_or_reward'], Config_commodity::type => isset($_POST['type']) ? Injection::excute('type') : '其他', Config_commodity::publisher => $_SESSION['CURRENT_LOGIN_ID'], Config_commodity::price => (int) $_POST['price'], Config_commodity::release_date => date('Y-m-d H:i:s', time()), Config_commodity::deleted_date => date('Y-m-d H:i:s', time()), Config_commodity::title => Injection::excute('topic'), Config_commodity::description => Injection::excute('description'), Config_commodity::communication_number => Injection::excute('phone')); include_once 'class/DBadder.php'; $myDBadder = new DBadder(Config_commodity::table_name, $commodity_message); //$myDBadder->excute($conn); upload_pictures($conn, mysqli_insert_id($conn)); header('Commodity_browse.php'); } else { include 'Login.php'; } }
function evaluate() { require_once 'class/Injection.php'; require_once 'class/Config_evaluation.php'; require_once 'class/DBtraverser.php'; require_once 'class/Config.php'; require_once 'class/Config_transaction.php'; include 'smarty_init.php'; $content = ''; // $content = Injection::excute('content'); //评价内容 $transaction_id = (int) $_REQUEST['transaction_id']; //评价交易单 $evaluater_id = $_SESSION['CURRENT_LOGIN_ID']; //评价人ID $score1 = $_REQUEST['score1']; $score2 = $_REQUEST['score2']; $score3 = $_REQUEST['score3']; $score = 10; $conn = Config::connect(); //判断订单是否已经存在 $trasaction_DBtraveser = new DBtraverser(Config_transaction::table_name, ' where ' . Config_transaction::id . ' = ' . "'" . $transaction_id . "'"); $transaction_retval = $trasaction_DBtraveser->excute($conn); $transaction_array = mysqli_fetch_array($transaction_retval, MYSQLI_ASSOC); if ($transaction_array) { $is_payer = $transaction_array[Config_transaction::commodity_buyer_id] == $evaluater_id ? 1 : 0; require_once 'class/Config_transaction.php'; $evaluation_DBtraveser = new DBtraverser(Config_evaluation::tbl_name, ' where ' . Config_evaluation::commodity_id . ' = ' . "'" . $transaction_array[Config_transaction::choosed_id] . "'" . 'AND' . Config_evaluation::is_payer . ' = ' . "'" . $is_payer . "'"); if (!mysqli_fetch_array($evaluation_DBtraveser->excute($conn))) { $evaluated = $transaction_array[Config_transaction::commodity_buyer_id] == $evaluater_id ? $transaction_array[Config_transaction::commodity_holder_id] : $transaction_array[Config_transaction::commodity_buyer_id]; $ary = array(Config_evaluation::evaluate_time => date('Y-m-d H:i:s', time()), Config_evaluation::evaluation => $content, Config_evaluation::is_payer => $is_payer, Config_evaluation::score1 => $score1, Config_evaluation::score2 => $score2, Config_evaluation::score3 => $score3, Config_evaluation::score => $score, Config_evaluation::commodity_id => $transaction_array[Config_transaction::choosed_id], Config_evaluation::valuator => $evaluater_id, Config_evaluation::valuated => $evaluated); $DBadder = new DBadder(Config_evaluation::tbl_name, $ary); $DBadder->excute($conn); echo "<script language='javascript'> alert('done!');\r\n window.history.go(-1);\r\n </script>"; } else { } } else { } mysqli_free_result($transaction_retval); mysqli_close($conn); }
function transaction($course_and_reward, $user_id, $page) { require_once 'class/Config_transaction.php'; require_once 'class/Config_commodity.php'; require_once 'class/commodity/Commodity_type_Config.php'; require_once 'class/Config.php'; //0.where if ($course_and_reward == Commodity_type_Config::all) { $where = ' where ' . Config_transaction::table_name . "." . Config_transaction::commodity_buyer_id . '=' . "'" . $user_id . "'" . ' OR ' . Config_transaction::table_name . "." . Config_transaction::commodity_holder_id . '=' . "'" . $user_id . "'"; } else { if ($course_and_reward == Commodity_type_Config::course) { $where = ' where ' . Config_transaction::table_name . "." . Config_transaction::commodity_buyer_id . '=' . "'" . $user_id . "'"; } else { $where = ' where ' . Config_transaction::table_name . "." . Config_transaction::commodity_holder_id . '=' . "'" . $user_id . "'"; } } // $where = 'select a.*,b.* from a inner join b on a.id=b.parent_id '; //1.连接数据库 $conn = Config::connect(); //多次使用的数据库连接 //2.向数据库查询符合条件数,以计算显示分页数目 $dbcount = new DBcount(Config_transaction::table_name, $where); $count = 1 + (int) ($dbcount->excute($conn) / SIZE_EACH_PAGE); //3.计算当前页码; $page = $page < 1 ? 1 : (int) $page; $page = $page > $count ? $count : $page; //4.分页执行 $query = 'select ' . Config_transaction::table_name . "." . Config_commodity::commodity_state . ',' . Config_commodity::table_name . "." . Config_commodity::pic_path . ',' . Config_commodity::table_name . "." . Config_commodity::course_or_reward . ',' . Config_commodity::table_name . "." . Config_commodity::description . ',' . Config_commodity::table_name . "." . Config_commodity::id . ',' . Config_commodity::table_name . "." . Config_commodity::type . ' from ' . Config_transaction::table_name . ',' . Config_commodity::table_name . ' ' . $where . ' AND ' . Config_commodity::table_name . '.' . Config_commodity::id . '=' . Config_transaction::table_name . '.' . Config_transaction::choosed_id . ' DESC LIMIT ' . ($page - 1) * SIZE_EACH_PAGE . ',' . SIZE_EACH_PAGE; $retval = mysqli_query($conn, $query); $array = array(); while (($temp_database_row_array = mysqli_fetch_array($retval, MYSQLI_ASSOC)) != null) { //array_push($array, $temp_database_row_array); //据说以下类似方法效率高一倍 $array[] = $temp_database_row_array; } mysqli_close($conn); mysqli_free_result($retval); }
<?php include_once 'smarty_init.php'; require_once 'Include_commodity.php'; require_once 'class/Config.php'; $commodity_id = $_REQUEST['id']; $conn = Config::connect(); $commodity_array_for_display = show_buy_html($commodity_id, $conn); $smarty->assign('detail', $commodity_array_for_display); $smarty->display('My/my-to-review.html');
protected function excute_query($query) { $conn = Config::connect(); $result = mysqli_query($conn, $query); mysqli_close($conn); return $result; }