Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

come inserire un messaggio se la ricerca da 0 risultati

7 views
Skip to first unread message

liftman

unread,
Jun 29, 2015, 6:06:39 PM6/29/15
to
Torno a rompere le OO (no, non č l'acronimo di Object Oriented :-) )

Abbiamo sempre il solito "giochino" dei libri e degli autori, ho un form che
mi permette la scelta di una chiave per mostrare solo una parte dei titoli,
la chiave č il tipo di libro, che puņ essere un giallo piuttosto che un
manuale o un fantasy, e tutto funziona diciamo bene per le mie necessitą con
questo codice:

$query1 = " SELECT * FROM libri WHERE genere = '$chiave' ORDER BY data
DESC";
$result1 = mysqli_query($link,$query1);

echo '<TABLE><TBODY>';
while ($row = mysqli_fetch_assoc($result1)) {
echo
'<tr><td>'.$row['data'].'</td><td>'.$row['autore'].'</td><td>'.$row['genere'].'</td></tr>';
}
echo '</TBODY></TABLE><br></br>';

supponendo perņ che tra i "generi" ce ne sia uno che ancora non ha autori
inseriti (o che siano stati cancellati), la ricerca con quella chiave non
mostrerebbe niente. L'idea č di far una cosa tipo:

if (esistono risultati) {
mostrali
}
else {
stampa un messaggio
}

ho fatto numerose prove l'ultima prendendo spunto da qua:
http://php.net/manual/en/function.mysql-num-rows.php ma con risultati nulli.

--
Fri(END), Boyfri(END), Girlfri(END), Bestfri(END). Everything has an END
except...Fam(ILY)! It Has 3 Letters that say I LOVE YOU

lluu...@gmail.com

unread,
Jun 30, 2015, 1:27:07 AM6/30/15
to
Ciao, ti piace proprio leggere...

ok, per sapere quanti sono i libri devi cercare qualcosa che ti permetta di contare le righe ritornate.

questa è la funzione che fa al caso tuo:
http://www.w3schools.com/php/func_mysqli_num_rows.asp

ti consiglio di leggertele tutte:
http://www.w3schools.com/php/php_ref_mysqli.asp

ti consiglio di partire dal caso in cui ci siano degli errori nella query, è importantissimo gestire le eccezioni.

quindi, cerca nella lista delle funzioni, in che modo hanno gestito i casi di errore e copialo.

Ciao e buona lettura.


liftman

unread,
Jun 30, 2015, 5:41:11 AM6/30/15
to

<lluu...@gmail.com> ha scritto nel messaggio
news:ca342d22-e350-4d47...@googlegroups.com...
> Ciao, ti piace proprio leggere...

io leggo abbastanza ma la collezionista di casa è la mia dolce metà; ne ha
talmente tanti che alla fine dopo il 4°-5° doppione acquistato (per fortuna
che esistono i mercatini dell'usato e l'esborso è modesto...) ho deciso di
fare ordine :-)

> ok, per sapere quanti sono i libri devi cercare qualcosa che ti permetta
> di contare le righe ritornate.
>
> questa è la funzione che fa al caso tuo:
> http://www.w3schools.com/php/func_mysqli_num_rows.asp

la funzione è perfetta, solo che nelle varie ricerche corredate da triliardi
di prove, mi sono imbattuto anche in molti esempi che giurerei fossero
esattamente uguali a questo ma che fornivano sempre come risultato 0. Meglio
non indagare, probabilmente ero io fuso dal caldo e stamani col "fresco" ci
ho preso alla prima :).


> ti consiglio di leggertele tutte:
> http://www.w3schools.com/php/php_ref_mysqli.asp

messo nei preferit!

> Ciao e buona lettura.

Grazie, e grazie anche per la dritta.

lluu...@gmail.com

unread,
Jul 1, 2015, 1:32:21 AM7/1/15
to
Prova a guardare se puó esserti di aiuto un programma che si chiama phpMaker.

Io l'ho usato e mi sono trovato molto bene.

I programmi che riescono meglio sono quelli che nascono da una necessita reale, nel tuo caso sei messo molto bene, mi viene solo da consigliarti di usare qualche strumento che possa ridurre i tempi di sviluppo.

Con programmi come phpmaker (ne esistono anche altri) ti concentri di piu sulla struttura del db (se vuoi fare una cosa carina devi creare p iu tabelle in relazione fra di loro altrimenti non lo puoi nemmendo chiamare db) e sulle funzionalita, ricerca, creazione, modifica, permessi con user passwd, le autorizzazioni su cosa un utente puo fare.

Buon divertimento.

liftman

unread,
Jul 1, 2015, 5:42:36 AM7/1/15
to

<lluu...@gmail.com> ha scritto nel messaggio
news:983ab423-c29b-43a3...@googlegroups.com...
> Prova a guardare se puó esserti di aiuto un programma che si chiama
> phpMaker.
>
> Io l'ho usato e mi sono trovato molto bene.

> I programmi che riescono meglio sono quelli che nascono da una necessita
> reale, nel tuo caso sei messo molto bene, mi viene solo da consigliarti di
> usare qualche strumento che possa ridurre i tempi di sviluppo.

Bhè.. le mie esigenze sono molto basse, sono pensionato e riempio il tempo
libero anche scribacchiando qualcosa ma non ho una reale competenza
programmatoria. Realizzo perlopiù script per il programma Mirc e in perl,
qualche paginetta html/css/php ma niente di trascendentale. Mi è venuta un
poco di curiosità sull'uso deli DB che ormai sono impiegati in tutti i siti,
ed ho colto l'occasione dei libri per avere materiale con cui "lavorare".

> Con programmi come phpmaker (ne esistono anche altri) ti concentri di piu
> sulla struttura del db (se vuoi fare una cosa carina devi creare p iu
> tabelle in relazione fra di loro altrimenti non lo puoi nemmendo chiamare
> db) e sulle funzionalita, ricerca, creazione, modifica, permessi con user
> passwd, le autorizzazioni su cosa un utente puo fare.

Per le mie necessità sarebbe come sparare ad un passerotto con un cannone
:-) oltretutto è un programma a pagamento e sono contrario alle "cure", il
soft che uso, o è free o lo pago e in questo momento soldi per il soft
proprio non ne posso scucire.. grazie comunque per il suggerimento che terrò
in debita considerazione eventualmente in futuro.
0 new messages