PHP 快速開發 資料表印出與排序

PHP 快速開發 資料表印出與排序

<?php
// ======基本設定======
$db=mysql_connect(‘localhost’,’root’,”) or die(‘無法連上資料庫伺服器’);//db設定
mysql_select_db(‘cdcol’,$db) or die(‘無法連上資料庫’); //設定資料庫
$table_name = ‘cds’ ; //設定資料表
$sql1=”select * from $table_name”; //SQL查詢
//可設定要排序的有那些
$select_order = array(‘titel’,’interpret’,’jahr’,’id’) ;
//表頭翻中文
$select_ch = array(‘標題’,’翻譯’,’年度’,’編號’) ; //false ;

//======主程式st======
if( !empty($_GET[‘order’]) ) $order = mysql_real_escape_string($_GET[‘order’]);
if( !empty($order) ) $sql1 .= ” order by `$order`”;
$sql2=”SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = ‘$table_name'”;
$result1=mysql_query($sql1,$db);
$result2=mysql_query($sql2,$db);
mysql_close($db); //關閉連線
$no_fields1=mysql_num_fields($result1);
$no_fields2=mysql_num_fields($result2);

//資料表與印出處理
echo “<table border=1>”;
echo “<tr>”;
$th = 0;
while($x=mysql_fetch_row($result2)) {
for($j=0;$j<$no_fields2;$j++) {
$pt = 0 ;
if ( isset($x[$j]) ) {
$so = false ;
foreach ($select_order as $key => $value) {
if ( $x[$j] == $value ) $so = true ;
}

if ($so == true ){
if ($select_ch == false){
echo “<th><a href=’?order=$x[$j]’>$x[$j]</a></th>”;
}else{
echo “<th><a href=’?order=$x[$j]’>$select_ch[$th]</a></th>”;
}
$pt = 1 ;
}
}
if ($pt == 0) {
if ($select_ch == false){
echo “<th>$x[$j]</th>”;
}else{
echo “<th>$select_ch[$th]</th>”;
}
}
}
$th += 1;
}
echo “</tr>”;
while($x=mysql_fetch_row($result1)){
echo “<tr>”;
for($j=0;$j<$no_fields1;$j++) echo “<td>$x[$j]</td>”;
echo “</tr>”;
}
echo “</table>”;
//======主程式ed======
?>

 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *