else{ //если нет $_GET[id] жанра, выведем все жанры //узнаем сколько всего страниц $how_pages = sql_how('genre_id','genres'); if (isset($_GET[page]) && !empty($_GET[page])) { $page = dont_hack($_GET[page],int); $offset = ($page-1)*12; $result_1 = sql_limit('*','genres',"$offset,12"); for ($i=0; $i < $how_pages-1; $i++) { $myrow_1 = sql_fetch_result($result_1); $genre[$i][genre_id]=$myrow_1[genre_id]; $genre[$i][genre_name]=$myrow_1[genre_name]; } } else{ $result_1 = sql_limit('*','genres','12'); if ($how_pages>=12) { //присваеваем другой переменоой, чтоб не сбить страничную навигацию $how_a=12; } else{ $how_a=$how_pages; } for ($i=0; $i < $how_a; $i++) { $myrow_1 = sql_fetch_result($result_1); $genre[$i][genre_id] = $myrow_1[genre_id]; $genre[$i][genre_name] = $myrow_1[genre_name]; } } } include __DIR__ . '/views/genre.php';
$var_numBegin = $var_numBegin; $var_begin = $var_begin - $var_nor; } elseif ($var_num == $var_numBegin) { $var_num = $var_num - 1; $var_numBegin = $var_numBegin - $var_nol; $var_begin = $var_calc_begin - $var_nor; $var_start = ""; } } //echo $sql; $_SESSION['next_sql'] = $sql; //echo("$totalrows,2,2,\"&ddlSearchType=$var_cmbSearch&txtSearch=" . urlencode($var_search) . "&id=$var_batchid&\",$var_numBegin,$var_start,$var_begin,$var_num"); $navigate = pageBrowser($totalrows, 10, $var_maxposts, "&val={$var_orderby}&sorttype={$var_sorttype}&pagenum=yes&mt=y&tp={$var_type}&cmbDepartment={$var_deptid}&stylename={$var_stylename}&styleminus={$var_styleminus}&styleplus={$var_styleplus}&", $var_numBegin, $var_start, $var_begin, $var_num); //execute the new query with the appended SQL bit returned by the function //$sql = $sql.$navigate[0]; $sql = $sql . ' LIMIT ' . sql_limit('tickets', $_GET['tp'], $var_maxposts, $var_maxposts); //echo "sql==$sql"; //echo "<br>".time(); //$rs = mysql_query($sql,$conn); $var_time = time(); $cntr = 1; $count = 0; $rs = executeSelect($sql, $conn); //echo "begin==".$begin; //echo "numbegin==".$numBegin; $startvalue = 0; if ($begin == "" and $numBegin == "") { $startvalue = 0; } else { if ($begin == "") { $startvalue = ($numBegin - 1) * 10;
else{ //если нет $_GET[id] жанра, выведем все жанры //узнаем сколько всего страниц $how_pages = sql_how('author_id','authors'); if (isset($_GET[page]) && !empty($_GET[page])) { $page = dont_hack($_GET[page],int); $offset = ($page-1)*12; $result_1 = sql_limit('*','authors',"$offset,12"); for ($i=0; $i < $how_pages-1; $i++) { $myrow_1 = sql_fetch_result($result_1); $author[$i][author_id]=$myrow_1[author_id]; $author[$i][author_name]=$myrow_1[author_name]; } } else{ $result_1 = sql_limit('*','authors','12'); if ($how_pages>=12) { //присваеваем другой переменоой, чтоб не сбить страничную навигацию $how_a=12; } else{ $how_a=$how_pages; } for ($i=0; $i < $how_a; $i++) { $myrow_1 = sql_fetch_result($result_1); $author[$i][author_id] = $myrow_1[author_id]; $author[$i][author_name] = $myrow_1[author_name]; } } } include __DIR__ . '/views/author.php';
function db_select($table, $fields, $sql_where, $order, $limit, $vars = array(), $optional = array()) { $fields = (array) $fields; $sql_where = (array) $sql_where; if (!is_array($limit)) { if ($limit != "") { $limit = array($limit); } else { $limit = array(); } } $rows = array(); if (!empty($optional["handler"])) { $handler = "lib_" . $optional["handler"]; $folder = $vars["folder"]; $vars = sys_remove_handler($vars); $rows = call_user_func(array($handler, "select"), $vars["folder"], $fields, $sql_where, $order, $limit, $vars, $vars["mfolder"]); if (count($rows) > 0 and in_array("id", $fields)) { foreach (array_keys($rows) as $key) { $rows[$key]["folder"] = $folder; $rows[$key]["id"] = $handler . ":" . $vars["mfolder"] . "/" . $rows[$key]["id"]; } } return $rows; } $groupby = ""; $where = ""; if (count($sql_where) > 0) { $where = str_replace("and 1=1", "", " where " . implode(" and ", $sql_where)); } if ($order != "") { $order = " order by " . $order; } if (!empty($optional["groupby"])) { $groupby = " group by " . $optional["groupby"]; } if (!empty($optional["custom_name"])) { $table = sql_translate(sql_concat($optional["custom_name"])); } $sql = "select " . implode(",", $fields) . " from " . $table . $where . sql_fieldname($order . $groupby, true); if (!empty($optional["default_sql"]) and $optional["default_sql"] != "no_select") { $sql = str_replace("@table@", $table, sql_translate($optional["default_sql"])); } if (is_array($vars) and count($vars) > 0) { foreach (array_keys($vars) as $key) { $sql = str_replace("@" . $key . "@", sys_correct_quote($vars[$key]), $sql); } } if (!empty($optional["sqlvarsnoquote"]) and count($optional["sqlvarsnoquote"]) > 0) { foreach ($optional["sqlvarsnoquote"] as $key => $val) { $sql = str_replace("@" . $key . "@", $val, $sql); } } $sql = str_replace("1=1 and ", "", $sql); if (count($limit) > 0) { $sql = sql_limit($sql, isset($limit[1]) ? $limit[0] : 0, isset($limit[1]) ? $limit[1] : $limit[0]); } if ($sql != "none") { $time_start = sys_get_microtime(); if (($rows = sql_fetch($sql)) === false) { $msg = sql_error(); if (DEBUG) { debug_sql("ERROR " . $sql, $msg); } sys_log_message_log("db-fail", $sql . " " . $msg, sys_backtrace()); return "error"; } $time = number_format(sys_get_microtime() - $time_start, 4); if ($time > DB_SLOW) { $slow_log = var_export(sql_explain($sql), true); sys_log_message_log("db-slow", sprintf("{t}%s secs{/t}", $time) . " " . $sql, sys_backtrace() . " " . $slow_log); } sys::$db_queries[] = array($sql, $time); if (in_array("pid", $fields) and count($rows) > 0) { $rows = modify::threadsort($rows); } } if (!empty($optional["default_sql"]) and $optional["default_sql"] != "no_select") { foreach ($rows as $key => $row) { if (!sys_select_where($row, $sql_where, $vars)) { unset($rows[$key]); } } return sys_select($rows, substr($order, 10), $limit, $fields); } if ($limit == array("1") and count($rows) > 1) { $rows = array(array("count" => count($rows))); } if (count($limit) > 0) { if (count($limit) == 2 and count($rows) > $limit[1]) { $rows = array_slice($rows, $limit[0], $limit[1]); } if (count($limit) == 1 and count($rows) > $limit[0]) { $rows = array_slice($rows, 0, $limit[0]); } } return $rows; }
function sql_row($table, $fields = "*") { global $_SQLWhere; if ($_SQLWhere === false) { fatal_error("WHERE is required"); } sql_offset(0); sql_limit(1); $result = sql_rowset($table, $fields); $data = sql_next($result); sql_free($result); return $data; }