Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    95

    Elenco province ordinate per regione in php

    Salve, ho questo problemino:
    mi servirebbe creare l'elenco come questo: http://www.bakeca.it/home.php
    ho provato con il seguente codice, ma la province vengono solo per il veneto
    Allego una foto per farvi vedere cosa ottengo


    Codice PHP:
    $nomeTabProv $tbl_prefix."provincia";

    $queryReg "SELECT * FROM $nomeTabProv GROUP BY regione ORDER BY regione";
    $sqlReg = @mysql_query($queryReg);
    if ((
    $sqlReg) AND (mysql_num_rows($sqlReg)>0))
    {
        while(
    $datiReg mysql_fetch_array($sqlReg))
        {
            
    $nomeReg ucfirst(stripslashes($datiReg['regione']));
            
    $linkReg str_replace(array("'"," "),"_",strtolower($nomeReg));
            echo(
    "[b]$nomeReg [/b]
    "
    );
        }
    }    
        
    $queryProv "SELECT * FROM $nomeTabProv WHERE regione = '$nomeReg' GROUP BY pr ORDER BY pr";
    $sqlProv = @mysql_query($queryProv);
    if ((
    $sqlProv) AND (mysql_num_rows($sqlProv)>0))
    {
        while(
    $datiProv mysql_fetch_array($sqlProv))
            {            
                
    $nomeProv ucfirst(stripslashes($datiProv['nome_prov']));
                
    $linkProv str_replace(array("'"," "),"_",strtolower($nomeProv));
                echo(
    '[*]<a href="'.$docRoot.'tpl_');
            if ( (isset(
    $cercaTrova)) AND ($cercaTrova == "cerco") )
                echo(
    'cerca');
            echo(
    'lavoro_cat.php?reg='.$linkReg."-".$linkProv.'">'.$nomeProv.'</a>');
            }    

    Grazie

  2. #2
    E' ovvio che ti funzioona solo per il Veneto per il semplice motivo che essa è l'ultima delle regioni in ordine alfabetico. Se nel primo while cicli tutto il resultset alla fine $nomeReg conterrà solamente il nome dell'ultima regione.
    Devi spostare la seconda select all'interno del primo ciclio while ed eseguirla per ogni regione.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    95
    Si grazie, ho risolto ieri sera.
    Ora l'elenco viene tutto di seguito, bruttino...
    Vorrei far in modo che dopo un tot di righe, vada sull'altra colonna, in modo da avere una tabella di 3-4 colonne..al posto dell'elenco verticale.
    Solo che mi stò confondendo con i tr td usati dentro il php .

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    95
    Ho questo codice ora...sicuramente sbaglio con i tr e td
    ora ho tutto l'elenco in verticale
    e vorrei che venisse così:



    Codice PHP:
    <?php
    $nomeTabProv 
    $tbl_prefix."provincia";
    $i 0;

    $queryReg "SELECT * FROM $nomeTabProv GROUP BY regione ORDER BY regione";
    $sqlReg = @mysql_query($queryReg);

    if ((
    $sqlReg) AND (mysql_num_rows($sqlReg)>0))
    {
        
    $i++;
        while(
    $datiReg mysql_fetch_array($sqlReg))
        {
            
    $i++;
            
    $nomeReg ucfirst(stripslashes($datiReg['regione']));
            
    $linkReg str_replace(array("'"," "),"_",strtolower($nomeReg));
            echo(
    "<table bgcolor='#F5F5F5' width:'500px' border='1'><tr><td width='150px'>[b]$nomeReg</td></tr>[/b]
    "
    ); 
            
    $queryProv "SELECT * FROM $nomeTabProv WHERE regione = '$nomeReg' GROUP BY pr ORDER BY pr";
            
    $sqlProv = @mysql_query($queryProv);
            if ((
    $sqlProv) AND (mysql_num_rows($sqlProv)>0))
    {
        while(
    $datiProv mysql_fetch_array($sqlProv))
            {            
                
    $nomeProv ucfirst(stripslashes($datiProv['nome_prov']));
                
    $linkProv str_replace(array("'"," "),"_",strtolower($nomeProv));
                echo(
    '<tr><td>[*]<a href="'.$docRoot.'tpl_');
            if ( (isset(
    $cercaTrova)) AND ($cercaTrova == "cerco") )
                echo(
    'cerca');
            echo(
    'lavoro_cat.php?reg='.$linkReg."-".$linkProv.'">'.$nomeProv.'</a></td>');
            if (
    $i == 20)
            {
                
    $i 0;
                echo(
    "

    "
    );
            }
            else
                if (
    $nomeProv != "VV")
                    echo(
    "</tr>");
            }    

        }
        echo(
    "</table>");
    }  
    ?>

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    95
    Nessuno?

  6. #6
    in quella pagina che hai postato hanno usato solo liste senza tabelle, cerca qualcosa con i css come lì e poi adatti il php
    Un tardo hegeliano di Busalla / allevava un gorilla nella stalla
    citando Adorno nell notti chiare / finché il primate stanco di ascoltare
    lo strangolò con una sciarpa gialla Dillo Con Parole Sue

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    95
    Non necessariamente deve essere identico al link postato..
    basta che utilizzo le select per prendere l'elenco delle regioni e province e che siano organizzate in modo chiaro..
    L'unica avevo pensato ad una tabella con 3-4 colonne.
    Ho provato con l'elenco puntato, ma stessa cosa, non vorrei un elenco lungo verticale..ma un elenco su più colonne.

  8. #8
    sì ma con i css al posto delle tabelle è meglio anche per l'accessibilità, prova a vedere qui
    http://csswizardry.com/2010/02/mutip...-using-one-ul/
    Un tardo hegeliano di Busalla / allevava un gorilla nella stalla
    citando Adorno nell notti chiare / finché il primate stanco di ascoltare
    lo strangolò con una sciarpa gialla Dillo Con Parole Sue

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    95
    Non riesco proprio...

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2012
    Messaggi
    95
    Ho provato anche così


    Codice PHP:
    $nomeTabProv $tbl_prefix."provincia";

    $queryReg "SELECT * FROM $nomeTabProv GROUP BY regione ORDER BY regione";
    $sqlReg = @mysql_query($queryReg);

    if ((
    $sqlReg) AND (mysql_num_rows($sqlReg)>0))
    {
        echo(
    "<table bgcolor='#F5F5F5' width:'500px' border='0'>");
        while(
    $datiReg mysql_fetch_array($sqlReg))
        {
            
    $nomeReg ucfirst(stripslashes($datiReg['regione']));
            
    $linkReg str_replace(array("'"," "),"_",strtolower($nomeReg));
            echo(
    "
    <tr><td>[b]
    $nomeReg[/b]</td>"); 
            
    $queryProv "SELECT * FROM $nomeTabProv WHERE regione = '$nomeReg' GROUP BY pr ORDER BY pr";
            
    $sqlProv = @mysql_query($queryProv);
            if ((
    $sqlProv) AND (mysql_num_rows($sqlProv)>0))
    {
        while(
    $datiProv mysql_fetch_array($sqlProv))
            {            
                
    $siglaProv ucfirst(stripslashes($datiProv['pr']));
                
    $linkProv str_replace(array("'"," "),"_",strtolower($siglaProv));
            
            echo(
    '<td>[*]<a href="'.$docRoot.'tpl_');
            if ( (isset(
    $cercaTrova)) AND ($cercaTrova == "cerco") )
                echo(
    'cerca');
            echo(
    'lavoro_cat.php?reg='.$linkReg."-".$linkProv.'">'.$siglaProv.'</a></td>');    
                    
            }    
    }
            echo(
    "</tr>");
    }  
    }  
    echo(
    "</table>"); 
    Ma non è bellissima

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.