1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
   | <?php
	include "conf.php";
 
$dbconn = pg_connect(" $host $port $dbname $user $password ") or die("Connexion impossible");
  $stat = pg_connection_status($dbconn);
  if ($stat === PGSQL_CONNECTION_OK) {
      echo "Connexion ok \n";
      echo "<br />\n";
  } else {
      echo "Connexion erronée \n";
  } 
$sql0 = " Select * FROM matable";
 
$result0 = pg_query($dbconn, $sql0);
if (!$result0) {
  echo "Une erreur est survenue.\n";
 
  exit;
}
 
// Définit les colonnes à trier
$i=pg_num_fields($result0);
 for ($j = 0; $j < $i; $j++) {	
	$tri_autorises [$j] = pg_field_name($result0, $j);
 }
 
 
 
 
// Tri sur colonne
$order_by = in_array($_GET['order'],$tri_autorises) ? $_GET['order'] : $tri_autorises [0];
 
// Sens du tri
$order_dir = isset($_GET['inverse']) ? 'DESC' : 'ASC';
 
$sql1 = "$sql0 ORDER BY {$order_by} {$order_dir}";
echo "sql1 = $sql1";
 
$result1 = pg_query($dbconn, $sql1);
 
// Notre fonction qui affiche les liens
function sort_link($text, $order=false)
{
    global $order_by, $order_dir;
 
   if(!$order)
        $order = $text;
 
    $link = '<a href="?order=' . $order;
    if($order_by==$order && $order_dir=='ASC')
        $link .= '&inverse=true';
    $link .= '"';
    if($order_by==$order && $order_dir=='ASC')
        $link .= ' class="order_asc"';
    elseif($order_by==$order && $order_dir=='DESC')
        $link .= ' class="order_desc"';
    $link .= '>' . $text . '</a>';
 
    return $link;
}
 
echo '<table border="1"><tr>';
$i=pg_num_fields($result1);
 for ($j = 0; $j < $i; $j++) {
	echo '<th>';
	echo sort_link(pg_field_name($result1, $j),pg_field_name($result1, $j)) ;
	echo '</th>';
 }
echo '</tr>';
 
while ($row = pg_fetch_row($result1)) {
	echo '<tr>';
	for	($j = 0; $j < count($row); $j++) {
		echo '<td>';     		
		echo ($row[$j] == NULL) ? '<i></i>' : $row[$j];
		echo '</td>';
	}
	echo '</tr>';
}
 
 
 
 
 
?>
<style type="text/css">
a.order_asc,
a.order_desc:hover { 
    padding-right:15px;
    background:transparent url(s_asc.png) right no-repeat;
}
a.order_desc,
a.order_asc:hover {
    padding-right:15px;
    background:transparent url(s_desc.png) right no-repeat;
}
</style> | 
Partager