visualizzare dati in tabella presi da un database e ordinarli per argomento e nome

Marco Carlozzo

Nuovo Utente
13 Giu 2014
27
0
0
salve a tutti sono nuovo, mi chiamo marco e vi scrivo perché ho bisogno di consigli su come sviluppare il mio sito web che dovrò presentare tra 3 giorni all'orale come tesina per la maturità. praticamente ho realizzato un sito web e ho intenzione di parlare di html5(novità,confronto con la vecchia versione,tag deprecati ecc...) ma sopratutto devo realizzare una unica pagina dove ci sarà un elenco in tabella con alcuni dei nuovi tag html5, dove se l'utente Loggato clicca ti fa stampare a video i campi di una tabella che sono il titolo del tag e la descrizione di cosa fa e se possibile un output di un pezzo di codice per far capire cosa produce. se era possibile fare nella stessa pagina l'ordinamento dei tag per nome o per argomento(esempio ordinati per nome:<article><aside> o per argomento:realizzazione form,input ecc..) non so come organizzare la query in SQL. premetto che ho creato un DB con le tabelle Tag e Argomento con l'associazione un argomento appartiene a più tag. sapreste darmi delle dritte? pretendo troppo?
vi ringrazio anticipatamente ma sono disperato non so proprio come fare.... il sito in questione è questo : http://bibliohtml5.altervista.org/
 
ciao
se non ho capito male devi usare nella query la clausola ORDER BY nome_del_campo_che_vuoi_ordinare DESC o ASC
se con due o più crtiteri
ORDER BY nome_1, nome_2 ecc...
 
ciao
se non ho capito male devi usare nella query la clausola ORDER BY nome_del_campo_che_vuoi_ordinare DESC o ASC
se con due o più crtiteri
ORDER BY nome_1, nome_2 ecc...
sisi lo so che bisogna usare quelle clausole ma c'è un modo che mi permettà di visualizzare i tag in ordine alfabetico nella stessa pagina php?
 
ciao
intendi stamparli a video, es
<a>
<abbr>
<acronym>
<address>
ecc....
?
se è cosi dopo la query di select devi estrarre il campo col nome del tag (come l'hai salvato?)
poi con un semplice echo li stampi, facendo attenzione che non devi usare < e > ma &lt; e &gt;
perchè altrimenti l'echo ti stampa quello che fa il tag e non es.<abbr>
se li hai salvati come <tag> o sostituisci < e > con &lt; e &gt; o fai
PHP:
echo htmlspecialchars("<tag>");
 
ciao
intendi stamparli a video, es

?
se è cosi dopo la query di select devi estrarre il campo col nome del tag (come l'hai salvato?)
poi con un semplice echo li stampi, facendo attenzione che non devi usare < e > ma &lt; e &gt;
perchè altrimenti l'echo ti stampa quello che fa il tag e non es.<abbr>
se li hai salvati come <tag> o sostituisci < e > con &lt; e &gt; o fai
PHP:
echo htmlspecialchars("<tag>");
grazie mille dell'aiuto, poi ho aggirato il problema in un altro modo: cioè quando riempo il campo della tabella tag inserisco davanti al nome &lt;tag&gt; e la mia query è organizzata cosi:
PHP:
$comandoSQL='SELECT t.nome, t.descrizione FROM tag t';
          $risultato=mysql_query($comandoSQL);
          if($risultato){
             $riga=mysql_fetch_array($risultato);
             while($riga){
                  print("<tr><td><a href='http://bibliohtml5.altervista.org/elencoTag.php?tag=".$riga[0]."'>".$riga[0]."</a></td><td>$riga[1]</td></tr>
");
                  
                  
                  
	               $riga=mysql_fetch_array($risultato);
             }
          }
     }
   ?>
 
ho risolto facendo nel modo elencato sopra. ma se volessi visualizzare in un'altra pagina la descrizione di ogni tag, dove essa comprende una porzione di testo che spiega cosa mi permette di fare quel tag, con sotto un esempio di codice e il risultato prodotto. è possibile farlo?
 
Ultima modifica:
ciao
vedo che scrivi
PHP:
print("<tr><td><a href='http://bibliohtml5.altervista.org/elencoTag.php?tag=".$riga[0]."'>".$riga[0]."</a></td>
<td>$riga[1]</td></tr>
non so cosa contenga $riga[0] di preciso
ma nella pagina elencoTag.php recuperi con un get
PHP:
 <?php
 if(!isset($_GET['tag'])){
  //reindirizzi
  exit();
 }else{
 	$q="SELECT * FROM tag WHERE campo='".$_GET['tag']."'";
	//e mostri quello che ti interessa
 }
 ?>
due note:
usando il get devi fare anche altri controlli per verificarne la correttezza, es se è un intero
PHP:
 <?php
 if(!isset($_GET['tag']) || !is_int($_GET['tag'])){
  //reindirizzi
  exit();
 }else{//ecc...
?>
poi di ai tuoi insegnati di non usare le istruzioni msql sono deprecate e tra un po' non più usabili, ma usare le mysqli o la classe pdo
 
grazie per le dritte il comando $riga[0] serve a prendere il valore contenuto nel campo nome della mia tabella del DB, cosi mi stampa in una tabella(<table>) tutti i campi (nome tag) presenti nella tabella tag. e se subito sotto la descrizione di cosa fa quel tag vorrei far vedere un codice di esempio e poi visualizzare il risultato come posso fare?
 

Discussioni simili