Pagine

domenica 2 novembre 2008

Griglia dinamica in PHP


Una griglia di dati che, dinamicamente, si adatta ai dati e/o ai filtri che abbiamo deciso di impostare è l'argomento che ho deciso di postare oggi. Passo subito al codice.


<?php


//assegnerò questa variabile al pulsante AZ o ZA che assegna il campo a $filtr
$filtr= @$_REQUEST['filtro'];>

$ordine= @$_REQUEST['ordine'];/assegnerò questa variabile al pulsante AZ o ZA che assegna il desc o asc alla query

$scelta = @$_POST['Gruppopulsantidiscelta1'];//questo è l'optionbutton selezionato

$den = @$_POST['cerca'];//questo sarà il "LIKE" della query SQL

#stabilisco le regole per il filtro dei dati

if ($scelta==''){$scelta=$Ordina; $miastringa='Nessun Filtro Attivo';}

else{$miastringa='Filtro Attivo per:' . ' ' . $scelta;};

if ($filtr=='') //se non sono stati premuti i tastini "az" o "za"...

{

$filtr=$Ordina . ' ' .'asc';

};

$filtro = $filtr . ' ' . $ordine;

#Quindi inizio a costruire la griglia


print "$miastringa";

<table bgcolor='FFFFCC' >";

echo"

<tr><th colspan='13'bgcolor='#FFFFcc'>$nometabella</th></tr>

<tr >

<th></th><th></th>";

$i=0;//scrivo le righe

while ($i <= $numerocolonne ){

echo"

<th bgcolor='6699ff' >$NomeCampo[$i]

<a title='AZ' href =\"{$_SERVER['PHP_SELF']}?filtro=$NomeCampo[$i]&ordine=ASC\"><img align='left'src='az.png'border='0'></a> </br>

<a title='ZA' href =\"{$_SERVER['PHP_SELF']}?filtro=$NomeCampo[$i]&ordine=DESC\"><img align='right' src='za.png'border='0'></a>

</th>";

++$i;

}

$result = mysqli_query($link, "SELECT * FROM $nometabella Where $scelta like'$den%'ORDER BY $filtro ");// effettuo la query

#(Come si può notare la query SQL è costruita su parametri che vengono passati dalle variabili

while ($row = mysqli_fetch_row($result))// eseguo la fetch dei risultati

{

echo "

<tr>

<th bgcolor=$col><a title='Modifica' $Modifica?id=$row[0]><img src='edit.png'border='0'></a> </th>

<th bgcolor=$col ><a title='Elimina' $Elimina?id=$row[0]><img src='drop.png' border='0'></a> </th>";

$n= 0;//scrivo i risultati della riga sulle colonne appropriate

while ($n <= $numerocolonne )

{

$replace=str_replace("°","'",$row[$n]);#trasformo gli ° in apostrofi poi spiego il perchè

echo "<th bgcolor=$col>$replace </th>";

++$n;

}

echo"</th>";

}//fine ciclo

mysqli_data_seek($result,0);// riporto il cursore della riga corrente a 0

mysqli_free_result($result);// chiudo il set dei risultati per liberare memoria

mysqli_close($link);// chiudo la connessione

?>


continua

Nessun commento: