感謝這裏的人在stackoverflow我已經掌握了大部分方面的數據庫(sqlite)控制在幾天內使用php!並設法建立一個基本的crud cms。我現在正在做一些小改進,並堅持'在會話中保存數據庫排序'。當我點擊頁面然後返回時,會話不會被保存。我到目前爲止,這似乎是一個令人沮喪的絆腳石。這是我有:在會話中保存數據庫排序
session_start();
$_SESSION['sort'] = $_GET['sort'];
$savedsort = $_SESSION['sort']; // store session data
if(!empty($_GET['sort']) && ctype_alnum(trim($_GET['sort'])))
$sort = trim($_GET['sort']);?> ///if page is empty
//links to sort data
<h2><?php echo $savedsort;?></h2>
<table border="0" align="center" cellpadding="8" cellspacing="0" id="show"><tr><th width="5"><a href="?sort=id">ID</a></th><th>IMG</th><th><a href="?sort=name">NAME</a></th>
<th width="10"><a href="?sort=cat">CAT</a></th></tr>
//query string
///////////////////////////////////////sort columns ////////////////////////////////
if($sort == $savedsort){
$result = $db->query("SELECT * FROM '$table1' ORDER BY '$savedsort' ");
}
else{$result = $db->query("SELECT * FROM '$table1' ORDER BY id ");}
//////////////////////////////////////////////////////////////////////////////////////
foreach($result as $row){
...任何指針非常讚賞。提前致謝。
現在保存在session變量,由於但不會更新查詢字符串
session_start();
if (isset($_GET['srt']))
{ $_SESSION['srt'] = $_GET['srt']; }
$srt = $_SESSION['srt'];
<tr><th width="5"><a href="?srt=id">ID</a></th><th>IMG</th><th><a href="?srt=name">NAME</a></th><th width="10"><a href="?srt=menu">CAT</a></th>........
$srtd = $db->query("SELECT * FROM '$table1' ORDER BY '$srt' "); ////////////////////////////////////////////////////////////////////////////////////// foreach($srtd as $row){ $id=$row['id'];
但這種方法的工作原理:是上面的代碼好嗎?
///////////////////////////////////////sort columns ////////////////////////////////
if ($srt=='name'){$srtd = $db->query("SELECT * FROM '$table1' ORDER BY name ");}
elseif($srt=='id'){$srtd = $db->query("SELECT * FROM '$table1' ORDER BY id ");}
elseif($srt=='menu'){$srtd = $db->query("SELECT * FROM '$table1' ORDER BY menu ");}
else{$srtd = $db->query("SELECT * FROM '$table1' ORDER BY id ");}
//////////////////////////////////////////////////////////////////////////////////////
感謝尼克;-)奇怪的是,我曾經在此查詢單引號和它的作品$dropdown = $db->query("SELECT * FROM '$table2' WHERE menu = '$menu'");
但我會用回從現在蜱上
每次訪問該頁面時,都會重新分配'$ _SESSION ['sort']'變量。如果'_ _GET ['sort']'不會被設置,你的會話變量也將爲null。所以你需要檢查你是否需要分配變量。 – Leri