Ancora Problemi con PHP, graditissime le correzioni!
Salve gente,
grazie ancora per avermi aiutato con il mio precedente problema.. Tutta colpa di uno stupidissimo "%" dimenticato... Ma vabbè...
Ora sussiste un'altro problema. Ho il solito database in cui sono raccolte delle Frasi, e sto creando una pagina per visualizzarle secondo dei criteri.
Questa spece di pagina "cerca" è strutturata con 4 (quattro) RadioButton (o OptionButton per i programmatori di VB), ognuno dei quali si riferisce ad una categoria di Frasi. Infatti le categorie cono quattro, Films, Poesie, Canzoni e Libri.
I quattro RadioButton si chiamano rispettivamente "OPTcategoria" e il loro valore contiene il nome della gategoria (Es. value = "Films").
Per ogni Radio Button ci sono 4 (quattro) Slect o Casella a discesa che dir si voglia (ComboBox per VB), nelle quali il contenuto è identico, ovvero, in alto "ALL" e in seguito tutte le lettere dell'alfabeto. Ciò al fine di cercare per ogni categoria una frase il cui titolo comincia per quella lettera. (Es. Seleziono "Frasi", seleziona la lettera "G" e mi vengono visualizzate le frasi di film che cominciano con la lettera "G" come ad esempio il "Gladiatore"; selezionando "ALL" mi dovrebbero essere visualizzate tutte le Frasi della categoria Films senza altre preferenze).
Le combo si chiamano CMBlettera + la categoria, quindi:
CMBletteraFilms
CMBletteraPoesie
CMBletteraCanzoni
CMBletteraLibri
Ho creato in PHP un if con due query che ora vi mostro ...
Codice PHP:
$VARCMBlettera = "CMBlettera" + $_POST['OPTcategoria'];
if ($VARCMBlettera == "All")
{$query = "SELECT * FROM ".$tablename." WHERE categoria='".$_POST['OPTcategoria']."' LIMIT ".$limit1.",".$limit2;
}
else
{$query = "SELECT * FROM ".$tablename." WHERE categoria='".$_POST['OPTcategoria']."' and Titolo = LIKE '".$_POST[$VARCMBlettera]."%' LIMIT ".$limit1.",".$limit2;
}
Il risultato di questo if dovrebbe essere:
Se nella combo interessata è selezionato "ALL" allora
esegui questa query che mi visualizza tutta la categoria
altrimenti
esegui quest'altra query che mi visulizza, dalla categoria, solo le frasi il cui titolo comincia per la lettera selezionata
Questo è quanto.
Chiedo scusa per essemi dilungato, ma, credo di aver reso le cose di alquanto semplice comprensione.
Confido nella vostra ennesima collaborazione.
Vi ringrazio anticipatamente,
Francesco
Chi fa da se... fa per 3*3^2/2*425x+bzy^2*4... insomma, meglio, tanto meglio...
Ci sono riuscito da solo!!!!!!
Chi fa da se... fa per 3*3^2/2*425x+bzy^2*4... insomma, meglio, tanto meglio...
Codice PHP:
//Nuovo Tentativo Creato da Francesco della FPM
//Per ovviare ai problemi precedenti, adopero questo sistema sotto illustrato...
//Identifico la categoria stabilita dall'utente...
$VARcategoria = $_POST['OPTcategoria'];
//Faccio un mega If per scegliere la lettera da considerare, in base alla categoria desiderata...
if ($VARcategoria = "Films")
{
$VARlettera = $_POST['CMBletteraFilms'];
}
elseif ($VARcategoria = "Poesie")
{
$VARlettera = $_POST['CMBletteraPoesie'];
}
elseif ($VARcategoria = "Libri")
{
$VARlettera = $_POST['CMBletteraLibri'];
}
elseif ($VARcategoria = "Canzoni")
{
$VARlettera = $_POST['CMBletteraCanzoni'];
}
//Ora controllo se si tratta di una lettera o di tutta la categoria e quindi ho due query...
if ($VARlettera == "All")
{
$query = "SELECT * FROM ".$tablename." WHERE categoria = '$VARcategoria' LIMIT ".$limit1.",".$limit2;
}
else
{
$query = "SELECT * FROM ".$tablename." WHERE categoria = '$VARcategoria' and Titolo LIKE '$VARlettera%' LIMIT ".$limit1.",".$limit2;
}