elenco variabili solo con suffisso

  • Creatore Discussione Creatore Discussione Monital
  • Data di inizio Data di inizio

Monital

Utente Attivo
15 Apr 2009
778
2
18
Buongiorno a tutti,

Mancod a un pò e mi ripresento con un piccolo problemino.

in un pannelloa dmin per la manutenzione dello script ho inserito un codice che mi elenca una tabella mysql composta da due campi, nome_variabile e valore., dove valore è listata come casella di testa eprmettendo cosi al sua modifica.

Ora però la tabella ha parecchi dati che fanno girare los cript ed onde evitare chje si faccia confusione pensavo di elencare solo sepcifiche variabile ad sempio in nome_variabile ho una serie di variabili con suffisso pre_ e diverse variabili con suffisso post_.

Se volessi elencare solo il suffisso post_?

questo il codice che uso



PHP:
mysql_connect($DBhost,$DBuser,$DBpass) or die("Impossibile collegarsi al server");
@mysql_select_db("data") or die("Impossibile connettersi al database data");
$sql = "SHOW COLUMNS FROM tabella";
$result = mysql_query($sql) or die(mysql_error());
$columns = array();
while($row = mysql_fetch_assoc($result))
$columns[] = $row['Field'];
$sql_columns = implode('+', $columns);  
$MIO_POST = $columns;
$per = implode(',', $MIO_POST); 
foreach($MIO_POST as $val){
$ristable.="<th>".$val."</th>";
echo "<input type='hidden' name='val[]' value='$val'/>"; 
}
$query = "SELECT * FROM tabella";
$risultato = mysql_query($query) or die("Query fallita: " . mysql_error() );
while ($row = mysql_fetch_assoc($risultato)) {
$risx.="<tr>\n";
echo "<input type='hidden' name='ID[]' value='".$row['ID']."'/>"; 
$risx.= "<td>".$row['variable']."</td>";
$risx.= "<td><input class=\"inputtext\"  type=\"text\"  name=\"valore[".$row['ID']."]\"  value='".$row['value']."' /></td>";
}
echo '<table class="db-table" cellpadding="0" cellspacing="0"><tbody>';
echo $ristable;
echo $risx;
echo '</tbody></table>';

in pratica nella colonna $row['variabile'] devo elencare solo le variabili con suffisso post_ mentre cosi me le elenca tutte
 
Ciao Monital.
Credo che invece di passare la query "SELECT * FROM tabella" dovresti passare la query "SELECT * FROM tabella WHERE nome_variabile LIKE 'post_%'".
In pratica il % ti estrae tutto ciò che inizia per ciò che hai specificato (nel caso sopra. Se invece le variabili fossero terminate con _post e tu le avessi volute estrarre avresti dovuto passare '%_post'. Mettiamo ancora il caso che _post_ sia in mezzo al nome della variabile dovresti passare '%_post_%')
Fammi sapere se funziona. Ciao!
 
Intanto grazie lighty.
Conosco il like e so usarlo ma non so perche non ci avebo proprio pensato.

Thank

Inviato con Tapatalk
 

Discussioni simili