Ci sto provando da un pò, ma sto impazzendoci sopra..
a sto punto posto il codice nel caso qualcuno mi indicasse la strada..
questo è il codice PRIMA delle prove fatte con post get ec..
ora come ora se clicco su Mostra, la query limit mi mostra correttamente solo i record chiesti
ma quando clicco su Ordina in un altro form mi riordina tutti i records..
sapreste indicarmi le modifiche da apportare per far si che si ordinino soltanto i records selezionati in precedenza?
body.phpCodice PHP:<?php
// Setto le variabili per la connessione
$db_username = 'username';
$db_password = 'password';
$db_host = 'localhost';
// Mi connetto all'host e poi al database (db_foto) che devo interrogare
$link = mysql_connect("$db_host", "$db_username", "$db_password") or die("Errore connessione: ". mysql_error());
mysql_select_db('my_DB') or die("Errore apertura database: " . mysql_error());
$max=$_POST['max'];
$min=$_POST['min'];
// Se il Form è stato inviato faccio la query con ORDER BY scegliendo le colonne da leggere, la inserico in una variabile e la passo con la seconda riga alla funziome mysql_query
if ($_POST['ordina']) {
$colonna_ord=$_POST['campotabella'];
$tipo_ord=$_POST['ordinamento'];
$strsql = "SELECT ID,NOME,COGNOME,EMAIL,USERID,PASSWORD,REGOLAMENTO,PREFERITO,CONTINUA,DATAISC FROM utenti_dati_personali ORDER BY $colonna_ord $tipo_ord LIMIT 0,10";
$rs = @mysql_query("$strsql",$link) or die("Errore query database: " . mysql_error());
require ('body.php');
}
//Se non si proviene dal form ordina vuol dire che accedo alla pagina la prima volta;
//Faccio la Query scegliendo le colonne da leggere, la inserico in una variabile e la passo con la seconda riga alla funziome mysql_query
//Poi verifico se si è scelto di visualizzare solo determinate righe del database cliccado su "Mostra"
else {
if ($_POST['Mostra']) {
$strsql = "SELECT ID,NOME,COGNOME,EMAIL,USERID,PASSWORD,REGOLAMENTO,PREFERITO,CONTINUA,DATAISC FROM utenti_dati_personali LIMIT $min,$max";
$rs = @mysql_query("$strsql",$link) or die("Errore query database: " . mysql_error());
require ('body.php');
}
else {
$strsql = "SELECT ID,NOME,COGNOME,EMAIL,USERID,PASSWORD,REGOLAMENTO,PREFERITO,CONTINUA,DATAISC FROM utenti_dati_personali LIMIT 0,10";
$rs = @mysql_query("$strsql",$link) or die("Errore query database: " . mysql_error());
require ('body.php');
}
}
?>
------------
sò che è un pò lungo da leggere ma magari mi sto perdendo in una cavolata..Codice PHP:<?php
require ('top.inc');
?>
<style type="text/css">
<!--
body {background-color: #000000;}
.Stile3 {font-size: 12px; color: #5500ff; }
.Stile4 {color: #000000}
-->
</style>
<form action="visualizza.php" method="POST">
<div align="center">
Ordina i dati della tabella in base al campo:
<select name="campotabella" value="<?php echo $_POST['campotabella']; ?>">
<option value="id" <?php if($_POST['campotabella']=='id'){echo ' selected ';}?>>ID</option>
<option value="nome" <?php if($_POST['campotabella']=='nome'){echo ' selected ';}?>>NOME</option>
<option value="cognome" <?php if($_POST['campotabella']=='cognome'){echo ' selected ';}?>>COGNOME</option>
<option value="email" <?php if($_POST['campotabella']=='email'){echo ' selected ';}?>>EMAIL</option>
<option value="userid"<?php if($_POST['campotabella']=='userid'){echo ' selected ';}?>>USERID</option>
<option value="password"<?php if($_POST['campotabella']=='password'){echo ' selected ';}?>>PASSWORD</option>
<option value="regolamento"<?php if($_POST['campotabella']=='regolamento'){echo ' selected ';}?>>REGOLAMENTO</option>
<option value="preferito"<?php if($_POST['campotabella']=='preferito'){echo ' selected ';}?>>PREFERITO</option>
<option value="continua"<?php if($_POST['campotabella']=='continua'){echo ' selected ';}?>>CONTINUA</option>
<option value="dataisc"<?php if($_POST['campotabella']=='dataisc'){echo ' selected ';}?>>DATAISC</option>
</select>
<select name="ordinamento" value="<?php echo $_POST['ordinamento']; ?>">
<option value="ASC"<?php if($_POST['ordinamento']=='ASC'){echo ' selected ';}?>>ASC</option>
<option value="DESC"<?php if($_POST['ordinamento']=='DESC'){echo ' selected ';}?>>DESC</option>
<input type="submit" name="ordina" value="Ordina">
</div>
</form>
<table width="750" border="10" align="center" cellpadding="4" cellspacing="0" bordercolor="#000000" bgcolor="#CCCCCC">
<tr>
<td bgcolor="#d0dce0"><div align="center" class="Stile3">ID</div></td>
<td bgcolor="#d0dce0"><div align="center" class="Stile3">NOME</div></td>
<td bgcolor="#d0dce0"><div align="center" class="Stile3">COGNOME</div></td>
<td bgcolor="#d0dce0"><div align="center" class="Stile3">EMAIL</div></td>
<td bgcolor="#d0dce0"><div align="center" class="Stile3">USERID</div></td>
<td bgcolor="#d0dce0"><div align="center" class="Stile3">PASSWORD</div></td>
<td bgcolor="#d0dce0"><div align="center" class="Stile3">VER.</div></td>
<td bgcolor="#d0dce0"><div align="center" class="Stile3">PREFERITO</div></td>
<td bgcolor="#d0dce0"><div align="center" class="Stile3">CONT</div></td>
<td bgcolor="#d0dce0"><div align="center" class="Stile3">DATAISC</div></td>
<td bgcolor="#d0dce0"><div align="center" class="Stile3">MOD</div></td>
<td bgcolor="#d0dce0"><div align="center" class="Stile3">CANC</div></td>
</tr>
<?php
//Imposto la funzione alternate_color che mi consente di mostrare ciascuna riga con un differente colore;
//Con global rendete due variabile globali cosi da poter vedere il colore, la parte centrale è quella che si occupa di selezionare il colore desiderato;
function alternate_color() {
global $color_id;
global $color;
$color_id++;
if ($color_id % 2 == 0)
{
$color = "#d5d5d5";
}
else
{
$color = "#e5e5e5";
}
}
// Ciclo while che legge ogni singola riga del database MYSQL e la stampa a video
while ($riga = mysql_fetch_array($rs)) {
$str_id = $riga['ID'];
$str_nome = $riga['NOME'];
$str_cognome = $riga['COGNOME'];
$str_email = $riga['EMAIL'];
$str_userid = $riga['USERID'];
$str_password = $riga['PASSWORD'];
$str_regolamento = $riga['REGOLAMENTO'];
$str_preferito = $riga['PREFERITO'];
$str_continua = $riga['CONTINUA'];
$str_iscr = $riga['DATAISC'];
//richiamo la funzione alternate_color all'interno del ciclo while per poter dare ad ogni riga un differente colore
alternate_color();
//istruzione echo che stampa a video ogni riga del database MySQL e fa ogni riga di un differente colore grazie alla variabile $color della funzione alternate_color
echo "<tr bgcolor=\"$color\" onmouseover=\"this.style.background='#ccffcc'\" onmouseout=\"this.style.background='$color'\">
<td><span class=\"Stile4\">$str_id</span></td>
<td><span class=\"Stile4\">$str_nome</span></td>
<td><span class=\"Stile4\">$str_cognome</span></td>
<td><span class=\"Stile4\">$str_email</span></td>
<td><span class=\"Stile4\">$str_userid</span></td>
<td><span class=\"Stile4\">$str_password</span></td>
<td><span class=\"Stile4\"><div align=\"center\">$str_regolamento</div></span></td>
<td><span class=\"Stile4\"><div align=\"center\">$str_preferito</div></span></td>
<td><span class=\"Stile4\"><div align=\"center\">$str_continua</div></span></td>
<td><span class=\"Stile4\">$str_iscr</span></td>
<td><span class=\"Stile4\"><div align=\"center\"><a href=\"admin.php?row=$str_id&action=modifica\"><img src=\"images/b_edit.png\" width=\"16\" height=\"16\" border=\"0\" alt=\"modifica\"/></a></div></span></td>
<td><span class=\"Stile4\"><div align=\"center\"><a href=\"admin.php?row=$str_id&action=cancella\"><img src=\"images/b_drop.png\" width=\"16\" height=\"16\" border=\"0\" onClick=\"return confirm('Procedere com l\'eliminazione della riga?')\" alt=\"cancella\"/></a></div></span></td>
</tr>";
}
?>
</table>
<?php
$strsql2 = "SELECT COUNT(*) as totisc FROM utenti_dati_personali";
$rs2 = @mysql_query("$strsql2",$link) or die("Errore query database: " . mysql_error());
$riga2 = mysql_fetch_array($rs2);
$str_totale_iscritti = $riga2['totisc'];
?>
<table width="750" border="0" align="center" cellspacing="0" cellpadding="0">
<tr>
<td align="center">Il numero totale di iscritti è: <?php echo $str_totale_iscritti; ?></td>
</tr>
</table>
<form action="visualizza.php" method="POST">
<div align="center">
<input type="submit" name="Mostra" value="Mostra: ">
<input name="max" type="text" id="max" size="5" value="<?php echo $_POST['max']; ?>">
righe a partire da <input name="min" type="text" id="min" size="5" value="<?php echo $_POST['min']; ?>">
</div>
</form>
<?php
require ('bottom.inc');
?>
vi ripeto che so che la parte riguardante l'order così non va.. hopostato il codice prima delle mie prove per vedere se qualcuno sa indicarmi come modificarlo..
grazie mille a chi vorrà perderci qualche minuto..

Rispondi quotando