• User Newbie

    link con query differenti

    ciao ragazzi, ho una serie di link!!

    
    [link A]()
     
    [link B]()
     
    [link C]()
     
    [link D]()
     
    [link E]()
     
    [link F]()
     
    [link G]()
     
    
    

    come faccio, in php, per ognuno fargli tirare fuori
    una query differente dal db?
    senza che per ogni link faccia io una pagina a parte perchè sono tanti!!

    Mi spiego meglio
    ho una tabella con questi campi

    
    id 
    comune 
    associazione 
    via 
    telefono 
    fax 
    email
    
    

    ad ogni link è associato un comune differente quindi una query che mi deve estrapolare solo le associazioni di quel comune


  • Super User

    @javaweb said:

    ciao ragazzi, ho una serie di link!!

    
    [link A]()
    

    link B

    link C

    link D

    link E

    link F

    link G

    
    come faccio, in php, per ognuno fargli tirare fuori 
    una query differente dal db? 
    senza che per ogni link faccia io una pagina a parte perchè sono tanti!! 
    
    Mi spiego meglio 
    ho una tabella con questi campi 
    
    

    id
    comune
    associazione
    via
    telefono
    fax
    email

    
    ad ogni link è associato un comune differente quindi una query che mi deve estrapolare solo le associazioni di quel comune
    

    fai una sola pagina, ed ad ogni link gli appendi una variabbile in get, ovvero nell'url metti:

    poagina.php**?miavariabile=query1** o
    poagina.php**?miavariabile=query2** o
    poagina.php**?miavariabile=query3** o
    poagina.php**?miavariabile=query3** ...

    Così nell pagina pagina.php avrai in $_GET['miavariabile'] avrai o il valore query1, o query2, o query3...

    poi nella pagina fai uno switch ovvero:

    switch($_GET['miavariabile'])
    {
    case 'query1':
    blablabla
    break;

    case 'query2':
    albalbalb
    break;
    }

    per saperne di +:

    it.php.net/switch


  • User Newbie

    ciao, grazie Pater, ho fatto come mi hai detto ma non riesco a farlo funzio nare...non capisco perchè;

    ho creato due pagine
    comune.php

    
    <form method="get" action="test.php?action=comune">
    [url="test.php?comune=query1"]Comune A
    
    
    
    [url="test.php?comune=query2"]Comune B
    </form>
    
    

    e test.php

    
    <?
    
    @include &#40;"../db/dbconf.php"&#41;; 
    
    $link=mysql_connect&#40;"$db_host","$db_login","$db_pass"&#41; 
    
    or die &#40;"Non riesco a connettermi a **$db_host"&#41;;
    
    mysql_select_db &#40;$database, $link&#41;
    
    or die &#40;"Non riesco a selezionare il db $database
    "&#41;;
    
    
     switch &#40;$_GET&#91;"action"&#93;&#41; &#123;
    
                     case "query1": 
                     
    				 $query = "SELECT comune FROM associazioni WHERE comune='varese'";
                     $result = mysql_query &#40;$query,$link&#41; 
                     or die &#40;"Non riesco ad eseguire la richiesta $query"&#41;;
    				 while &#40;$valori = mysql_fetch_array &#40;$result&#41;&#41;&#123; 
    
    					$a1 = $valori &#91;"comune"&#93;; 
    
    					$a2 = $valori &#91;"denominazione"&#93;;
    
    					$a3 = $valori &#91;"sede"&#93;; 
    
    					$a4 = $valori &#91;"telefono"&#93;;
    
    					$a5 = $valori &#91;"fax"&#93;;
    
    					$a6 = $valori &#91;"email"&#93;;
    						 
    					echo "<tr>"; 
    					echo "<td class='h13'>$a1</td>"; 
    					echo "<td class='h13'>$a2</td>"; 
    					echo "<td class='h13'>$a3</td>"; 
    					echo "<td class='h13'>$a4</td>";
    					echo "<td class='h13'>$a5</td>"; 
    					echo "<td class='h13'>$a6</td>"; 
    					echo "</tr>";
    
    				    &#125; 
    	             break;
    
    				 case "query2"&#58; 
                     
    				 $query = "SELECT comune FROM associazioni WHERE comune='milano'"; 
                     $result = mysql_query &#40;$tutto,$link&#41; 
                     or die &#40;"Non riesco ad eseguire la richiesta $query"&#41;;
    
                     while &#40;$valori = mysql_fetch_array &#40;$result&#41;&#41;&#123;
    
    					$a1 = $valori &#91;"comune"&#93;;
    
    					$a2 = $valori &#91;"denominazione"&#93;; 
    
    					$a3 = $valori &#91;"sede"&#93;;
    
    					$a4 = $valori &#91;"telefono"&#93;;
    
    					$a5 = $valori &#91;"fax"&#93;;
    
    					$a6 = $valori &#91;"email"&#93;;
    
    					echo "<tr>"; 
    					echo "<td class='h13'>$a1</td>"; 
    					echo "<td class='h13'>$a2</td>";
    					echo "<td class='h13'>$a3</td>"; 
    					echo "<td class='h13'>$a4</td>";
    					echo "<td class='h13'>$a5</td>"; 
    					echo "<td class='h13'>$a6</td>"; 
    					echo "</tr>";
    
    				    &#125; 
                     break;
    
                     &#125;
    ?>
    
    

  • Super User

    @javaweb said:

    ciao, grazie Pater, ho fatto come mi hai detto ma non riesco a farlo funzio nare...non capisco perchè;

    ho creato due pagine
    comune.php

    
    <form method="get" action="test.php?action=comune">
    [url="test.php?comune=query1"]Comune A
    
    

    [url="test.php?comune=query2"]Comune B
    </form>

    
    e test.php
    
    

    <?

    @include ("../db/dbconf.php");

    $link=mysql_connect("$db_host","$db_login","$db_pass")

    or die ("Non riesco a connettermi a **$db_host");

    mysql_select_db ($database, $link)

    or die ("Non riesco a selezionare il db $database
    ");

    switch ($_GET["action"]) {

                case "query1": 
                
      		 $query = "SELECT comune FROM associazioni WHERE comune='varese'";
                $result = mysql_query &#40;$query,$link&#41; 
                or die &#40;"Non riesco ad eseguire la richiesta $query"&#41;;
      		 while &#40;$valori = mysql_fetch_array &#40;$result&#41;&#41;&#123; 
    
      			$a1 = $valori &#91;"comune"&#93;; 
    
      			$a2 = $valori &#91;"denominazione"&#93;;
    
      			$a3 = $valori &#91;"sede"&#93;; 
    
      			$a4 = $valori &#91;"telefono"&#93;;
    
      			$a5 = $valori &#91;"fax"&#93;;
    
      			$a6 = $valori &#91;"email"&#93;;
      				 
      			echo "<tr>"; 
      			echo "<td class='h13'>$a1</td>"; 
      			echo "<td class='h13'>$a2</td>"; 
      			echo "<td class='h13'>$a3</td>"; 
      			echo "<td class='h13'>$a4</td>";
      			echo "<td class='h13'>$a5</td>"; 
      			echo "<td class='h13'>$a6</td>"; 
      			echo "</tr>";
    
      		    &#125; 
               break;
    
      		 case "query2"&#58; 
                
      		 $query = "SELECT comune FROM associazioni WHERE comune='milano'"; 
                $result = mysql_query &#40;$tutto,$link&#41; 
                or die &#40;"Non riesco ad eseguire la richiesta $query"&#41;;
    
                while &#40;$valori = mysql_fetch_array &#40;$result&#41;&#41;&#123;
    
      			$a1 = $valori &#91;"comune"&#93;;
    
      			$a2 = $valori &#91;"denominazione"&#93;; 
    
      			$a3 = $valori &#91;"sede"&#93;;
    
      			$a4 = $valori &#91;"telefono"&#93;;
    
      			$a5 = $valori &#91;"fax"&#93;;
    
      			$a6 = $valori &#91;"email"&#93;;
    
      			echo "<tr>"; 
      			echo "<td class='h13'>$a1</td>"; 
      			echo "<td class='h13'>$a2</td>";
      			echo "<td class='h13'>$a3</td>"; 
      			echo "<td class='h13'>$a4</td>";
      			echo "<td class='h13'>$a5</td>"; 
      			echo "<td class='h13'>$a6</td>"; 
      			echo "</tr>";
    
      		    &#125; 
                break;
    
                &#125;
    

    ?>

    non ti consiglio fare così... con lo switch ti consiglio di settare solo la query da fare, poi fai un fetch array dopo, però fallo in modo che vada bene per tutti i comuni!