- Home
- Categorie
- Coding e Sistemistica
- PHP
- [Script] Tabella:ordinare le righe a seconda dell'ordine alfanumerico della colonna
-
[Script] Tabella:ordinare le righe a seconda dell'ordine alfanumerico della colonna
Scopo: in una tabella, ordinare le righe a seconda dell'ordine alfanumerico di una colonna.
Codice prima del DOCTYPE
[php]<?php
//Per questo eempio utilizzarò colonna1 e colonna2 va da se che lo script sottostante è utilizzable per n-colonne.
//E' sufficente inserirle nello script seguente, seguendo la "forma" che hano le altre nel codice.//CONNESSONE AL DATABASE
include("connessione.php");//Se la variabile
if(empty($_GET['ordercampo'])){$_GET['ordercampo']="id_chiaveprimaria";}if(empty($_GET['order'])){$_GET['order']="asc"; }
//Questi due if:
//permetto lo SCAMBIO fra l'ordinamento crescente e decresente, ciò è possibile semplicemente cliccando sopra la prima riga contenente il link della colonna desiderata "colonna1", "colonna2"
if($_GET['order']=="asc") {$ordinaVerso="desc";}
if($_GET['order']=="desc") {$ordinaVerso="asc";}//Query: notare l'SQL: ORDER BY $_GET[ordercampo] $ordinaVerso
$query=mysql_query("SELECT colonna1, colonna2, ecc.ecc. FROM tabella1, tabella2 ecc.ecc. WHERE eventualemnte il where ORDER BY $_GET[ordercampo] $ordinaVerso",$db);
$riga_query=mysql_fetch_assoc($query) or die("impossibile mysql_fetch_assoc: $sql<br>". mysql_error());
?>[/php]Codice fra i tag <body></body>
[php]
<table id="tabella_risposta">
<tr>
<td><a href="link_a_se_stesso.php?ordercampo=<?php echo('colonna1'); ?>&order=<?php echo($ordinaVerso); ?>" title="Inverti ordinamento">Colonna1</a></td>
<td><a href="link_a_se_stesso.php?ordercampo=<?php echo('colonna2'); ?>&order=<?php echo($ordinaVerso); ?>" title="Inverti ordinamento">Colonna2</a></td>
</tr><!-- @@@ INIZIO: Cotruzione della tabella mediante DO...WHILE oppure WHILE @@@ -->
<tr>
<?php $id_chiaveprimaria=$riga_query['id_chiaveprimaria']; ?>
<td>contenuto colonna1 proveniente dal ciclo PHP</td>
<td>contenuto colonna2 proveniente dal ciclo PHP</td>
</tr>
<!-- @@@ FINE: Cotruzione della tabella mediante DO...WHILE oppure WHILE @@@ -->
</table>
[/php]