Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Ciclo all'interno di un altro ciclo su un'altra tabella

    Ciao a tutti, sono bloccato, non riesco a trovare una soluzione.
    Ho una tabella che contiene nomi squadre, giornate e risultati ed un'altra tabella che contiene le date delle giornate.

    Scegliendo la giornata da un menu' a tendina riesco a far visualizzare le partite di quella giornata con relative date (pescate dall'altra tabella).

    Scegliendo una singola squadra riesco a visualizzare tutte le partite di quella squadra ma in tutte le partite mi viene visualizzata la data della prima giornata.

    Non riesco a venirne a capo, ho anche provato ad inserire la query per le date all'interno del ciclo della query delle partite ma cosi' facendo mi viene visualizzata solo una partita (su 15).

    Ecco il mio codice:
    Codice PHP:
    <?PHP
        
        
    include ("header.php");
        
    ?>
        
    <?PHP 

        
    include("dati.php"); 
        
    ?>



    <div id="box-grande">






        
        
    <script src="Scritte.js"  type="text/javascript"></script>




    <table style="width: 800px" class="style1" align="center">
        <tr><td style="height: 30px">
            <form name="tickform" action="post" method="post">
            <input name="tickfield" size="99">
            </form>
        </td></tr>
    </table>




    <?php
    if (isset ($_GET['giornata'])) {
    $giornata $_GET['giornata'];}
    else {
    $giornata $_POST['partite'];}

    if (isset (
    $_GET['squadra'])) {
    $squadra $_GET['squadra'];}
    else {
    $squadra $_POST['selezione'];}

    if (isset (
    $_GET['stagione'])) {
    $stagione $_GET['stagione'];}
    else {
    $stagione $_POST['stagione'];}

    $tabella "girone$stagione";
    $tabcalendario "cal$stagione";
    $giornategare "giornate$stagione";

    $dbcnx mysql_connect("$host""$user_db""$pass_db");
    mysql_select_db("$nome_db"$dbcnx);
    $res mysql_query ("select categoria, girone from $tabella GROUP BY categoria"); 
    $num mysql_num_rows ($res);

    for (
    $i=0$i<$num$i++)
     {

      
    $categoria mysql_result ($res$i"categoria");

      
    $girone mysql_result ($res$i"girone");

     } 
     
     
    mysql_close($dbcnx);
    ?>
        

    <table style="width: 800px" class="style9" align="center">
        <tr>
            <td align="center" style="height: 35px">
                [b]
                        <?php echo $categoria;?> CATEGORIA GIRONE "<?php echo $girone;?><?php echo $stagione;?>/<?php echo $stagione 1;?>
                [/b]
            </td>
        </tr>
    </table>




    <?php
    $squadra 
    stripslashes($squadra);
    ?>



    <Table Width="80%" class="style7" Align="Center" Cellpadding="3" Cellspacing="1">
    <Tr>
    <Td>



    <form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>?stagione=<?php echo $stagione;?>&amp;squadra=<?php echo $squadra;?>">


    <?php

    $selected 
    ' SELECTED ';

    $dbcnx mysql_connect("$host""$user_db""$pass_db"); 
    mysql_select_db("$nome_db"$dbcnx);

    $res mysql_query ("SELECT giornata_gara FROM $tabcalendario GROUP BY giornata_gara ORDER BY id_cal"); 
    $num mysql_num_rows ($res); 
    echo 
    "[b]SELEZIONA UNA GIORNATA PER VEDERNE LE PARTITE[/b]"
    echo 
    "<select name=\"partite\" onchange=\"this.form.submit()\">";

    while(
    $partite=mysql_fetch_array($res)){ 
        echo 
    "<option value=\"$partite[giornata_gara]\"";
        if (
    $partite['giornata_gara'] == $giornata){
        echo 
    $selected;
        }
        echo 
    ">$partite[giornata_gara]</option>"

    echo 
    "</select>";



    mysql_close($dbcnx);
    ?>

    </form>
    </Td>
    </Tr>
    </Table>








    <?php



    $dbcnx 
    mysql_connect("$host""$user_db""$pass_db"); 
    mysql_select_db("$nome_db"$dbcnx);

    $res mysql_query ("SELECT DATE_FORMAT(data_andata,'%d/%m/%Y') AS data_andata, DATE_FORMAT(data_ritorno,'%d/%m/%Y') AS data_ritorno FROM $giornategare  where giornata = '$giornata'"); 
    $num mysql_num_rows ($res);

    for (
    $i=0$i<$num$i++)
     {

      
    $dataandata mysql_result ($res$i"data_andata");

      
    $dataritorno mysql_result ($res$i"data_ritorno");

     } 
     
     
    mysql_close($dbcnx);



    ?>




    <?php






    echo "<Table Width=\"90%\" class=\"style8\" Align=\"Center\" Cellpadding=\"3\" Cellspacing=\"1\">"

      echo 
    "<Tr>"
      echo 
    "<Td align=\"center\" bgcolor=\"#D9D9D9\">";
      echo 
    "[B]";
      echo 
    $giornata;
      echo 
    "[/B]";  
      echo 
    "[B]ANDATA / RITORNO[/B]";
      echo 
    "</Td>"
       
      echo 
    "<Td align=\"center\" bgcolor=\"#D9D9D9\">"
      echo 
    "[B]";
      echo 
    $dataandata;
      echo 
    "[/B]"
      echo 
    "</Td>"
       
      echo 
    "<Td align=\"center\" bgcolor=\"#D9D9D9\">"
      echo 
    "[B]";
      echo 
    $dataritorno;
      echo 
    "[/B]"
      echo 
    "</Td>";  
      echo 
    "</Tr>";  
      
      
      
    $dbcnx mysql_connect("$host""$user_db""$pass_db");
    mysql_select_db("$nome_db"$dbcnx);
    $res mysql_query ("select squadra1, squadra2, giornata_gara, risultato1a, risultato1r, risultato2a, risultato2r from $tabcalendario where giornata_gara = '$giornata' ORDER BY id_cal ASC"); 
    $num mysql_num_rows ($res);

    for (
    $i=0$i<$num$i++)
     {
      
    $td1 mysql_result ($res$i"giornata_gara");
      
    $td21 mysql_result ($res$i"squadra1");
      
    $td22 mysql_result ($res$i"squadra2");
      
    $td41 mysql_result ($res$i"risultato1a");
      
    $td42 mysql_result ($res$i"risultato2a");
      
    $td61 mysql_result ($res$i"risultato1r");
      
    $td62 mysql_result ($res$i"risultato2r");
        
      
      if ((
    $i 2) == 0)
         
    $color "#EEEEEE";
     else
         
    $color "#D9D9D9";
         
    if (
    trim(strtolower($td21)) == trim(strtolower("F.C.D. VILLANOVA")) ) { 
       
    $color "#e431e2"
    }

    if (
    trim(strtolower($td22)) == trim(strtolower("F.C.D. VILLANOVA")) ) { 
       
    $color "#e431e2"
    }

        if (
    trim(strtolower($td21)) == trim(strtolower("F.C. VILLANOVA")) ) { 
       
    $color "#e431e2"
    }

    if (
    trim(strtolower($td22)) == trim(strtolower("F.C. VILLANOVA")) ) { 
       
    $color "#e431e2"
    }
      
      echo 
    "<Tr>";
      echo 
    "<Td class=\"style10\" align=\"center\" bgcolor=\"$color\">";
      
      if (
    $td21 == "F.C.D. VILLANOVA"){
        echo 
    "[b]";
        }
        if (
    $td21 == "F.C. VILLANOVA"){
        echo 
    "[b]";
        }
        
      echo 
    $td21;
      
      if (
    $td21 == "F.C.D. VILLANOVA"){
        echo 
    "[/b]";
        }
        if (
    $td21 == "F.C. VILLANOVA"){
        echo 
    "[/b]";
        }
      
      echo
    "-";
      
      if (
    $td22 == "F.C.D. VILLANOVA"){
        echo 
    "[b]";
        }
        if (
    $td22 == "F.C. VILLANOVA"){
        echo 
    "[b]";
        }
      
      
      echo 
    $td22;
      
      if (
    $td22 == "F.C.D. VILLANOVA"){
        echo 
    "[/b]";
        }
        if (
    $td22 == "F.C. VILLANOVA"){
        echo 
    "[/b]";
        }
      
      
      echo 
    "</Td>";
      
      
      
      echo 
    "<Td class=\"style10\" align=\"center\" bgcolor=\"$color\">";
      echo 
    $td41;echo"-";echo $td42;
      echo 
    "</Td>";
      
      
      
      echo 
    "<Td class=\"style10\" align=\"center\" bgcolor=\"$color\">";
      echo 
    $td61;echo"-";echo $td62;
      echo 
    "</Td>";
      echo 
    "</Tr>";
      
      


    mysql_close($dbcnx);
    ?>



    </Table>





    <Table Width="80%" class="style7" Align="Center" Cellpadding="3" Cellspacing="1">
    <Tr>
    <Td>



    <form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>?stagione=<?php echo $stagione;?>&amp;giornata=<?php echo $giornata;?>">


    <?php

    $selected 
    ' SELECTED ';

    $dbcnx mysql_connect("$host""$user_db""$pass_db"); 
    mysql_select_db("$nome_db"$dbcnx);

    $res mysql_query ("SELECT * FROM $tabella ORDER BY squadra_minuscolo"); 
    $num mysql_num_rows ($res); 
    echo 
    "[b]SELEZIONA UNA SQUADRA PER VEDERNE IL CALENDARIO[/b]"
    echo 
    "<select name=\"selezione\" onchange=\"this.form.submit()\">"

    while(
    $selezione=mysql_fetch_array($res)){ 
        echo 
    "<option value=\"$selezione[squadra_maiuscolo]\"";
        if (
    $selezione['squadra_maiuscolo'] == $squadra){
        echo 
    $selected;
        }
        echo 
    ">$selezione[squadra_maiuscolo]</option>"

    echo 
    "</select>";


    mysql_close($dbcnx);
    ?>


    </form>
    </Td>
    </Tr>
    </Table>




    <?php

    $squadra 
    stripslashes($squadra);
    $squadraricerca addslashes($squadra);

    echo 
    "<Table Width=\"90%\" class=\"style8\" Align=\"Center\" Cellpadding=\"3\" Cellspacing=\"1\">"

      echo 
    "<Tr>"
      echo 
    "<Td align=\"center\" bgcolor=\"#D9D9D9\">"
      echo 
    "[B]PARTITE";
      echo 
    $squadra;
      echo 
    "[/B]";  
      echo 
    "</Td>"
      echo 
    "<Td align=\"center\" bgcolor=\"#D9D9D9\">"
      echo 
    "[B]DATA[/B]"
      echo 
    "</Td>"
      echo 
    "<Td align=\"center\" bgcolor=\"#D9D9D9\">"
      echo 
    "[B]RISULTATO[/B]"
      echo 
    "</Td>"
      echo 
    "<Td align=\"center\" bgcolor=\"#D9D9D9\">"
      echo 
    "[B]DATA[/B]"
      echo 
    "</Td>"
      echo 
    "<Td align=\"center\" bgcolor=\"#D9D9D9\">"
      echo 
    "[B]RISULTATO[/B]"
      echo 
    "</Td>"
      echo 
    "</Tr>";  
        
    $dbcnx mysql_connect("$host""$user_db""$pass_db");
    mysql_select_db("$nome_db"$dbcnx);
    $res mysql_query ("select squadra1, squadra2, giornata_gara, risultato1a, risultato1r, risultato2a, risultato2r from $tabcalendario where squadra1 = '$squadraricerca' or squadra2 = '$squadraricerca' ORDER BY id_cal ASC"); 
    $num mysql_num_rows ($res);

    for (
    $i=0$i<$num$i++)
     {
      
    $td1 mysql_result ($res$i"giornata_gara");
      
    $td21 mysql_result ($res$i"squadra1");
      
    $td22 mysql_result ($res$i"squadra2");
      
    $td41 mysql_result ($res$i"risultato1a");
      
    $td42 mysql_result ($res$i"risultato2a");
      
    $td61 mysql_result ($res$i"risultato1r");
      
    $td62 mysql_result ($res$i"risultato2r");
      
      
      if ((
    $i 2) == 0)
         
    $color "#EEEEEE";
     else
         
    $color "#D9D9D9";
         
     
      echo 
    "<Tr>";
      echo 
    "<Td class=\"style10\" align=\"left\" bgcolor=\"$color\">";
      
      if (
    $td21 == "F.C.D. VILLANOVA"){
        echo 
    "[b]";
        }
        if (
    $td21 == "F.C. VILLANOVA"){
        echo 
    "[b]";
        }
      
      
      echo 
    $td21;
      
      
      if (
    $td21 == "F.C.D. VILLANOVA"){
        echo 
    "[/b]";
        }
        if (
    $td21 == "F.C. VILLANOVA"){
        echo 
    "[/b]";
        }
      
      
      echo
    "-";
      
       
       if (
    $td22 == "F.C.D. VILLANOVA"){
        echo 
    "[b]";
        }
        if (
    $td22 == "F.C. VILLANOVA"){
        echo 
    "[b]";
        }
      
      
      echo 
    $td22;
      
      
      if (
    $td22 == "F.C.D. VILLANOVA"){
        echo 
    "[/b]";
        }
        if (
    $td22 == "F.C. VILLANOVA"){
        echo 
    "[/b]";
        }
      
      echo 
    "</Td>";
      
      echo 
    "<Td class=\"style10\" align=\"center\" bgcolor=\"$color\">";
      echo 
    $dataandata;
      echo 
    "</Td>";
      
      echo 
    "<Td class=\"style10\" align=\"center\" bgcolor=\"$color\">";
      echo 
    $td41;echo"-";echo $td42;
      echo 
    "</Td>";
      
      echo 
    "<Td class=\"style10\" align=\"center\" bgcolor=\"$color\">";
      echo 
    $dataritorno;
      echo 
    "</Td>";
      
      echo 
    "<Td class=\"style10\" align=\"center\" bgcolor=\"$color\">";
      echo 
    $td61;echo"-";echo $td62;
      echo 
    "</Td>";
      echo 
    "</Tr>";
      
      


    mysql_close($dbcnx);
    ?>

    <?php

    $dbcnx 
    mysql_connect("$host""$user_db""$pass_db"); 
    mysql_select_db("$nome_db"$dbcnx);

    $res mysql_query ("SELECT DATE_FORMAT(data_andata,'%d/%m/%Y') AS data_andata, DATE_FORMAT(data_ritorno,'%d/%m/%Y') AS data_ritorno FROM $giornategare  where giornata = '$td1' ORDER BY id_giornata ASC"); 
      
    $num mysql_num_rows ($res);

    for (
    $i=0$i<$num$i++)
     {

      
    $dataandata mysql_result ($res$i"data_andata");
      
    $dataritorno mysql_result ($res$i"data_ritorno");


     } 
     
     
    mysql_close($dbcnx);
     
     
    ?>



    </Table>










        
        

    <center>
        <script src="bannerad3.js" type="text/javascript"></script>
    <div align="center">
        <script src="Sponsor.js" type="text/javascript"></script>
    </div>
    </center>


        
    </div>


    <?PHP
        
        
    include ("footer.php");
        
    ?>
        
        </body>
        
        </html>

  2. #2
    Forse non mi sono spiegato in modo da farmi capire o forse ho sbagliato a postare tutto il codice della pagina e non solo quello interessato.
    Praticamente io scelgo una squadra con un select e di questa squadra devo vedere tutte le partite con date e risultati.
    Le date pero' si trovano in una tabella differente rispetto a partite e risultati.
    Sia la tabella delle date che quella con partite e risultati contengono un campo che indica il numero della giornata (prima, seconda, etc.).
    Il problema e' che il numero della giornata lo ottengo solo dopo la prima interrogazione al db e quindi non posso interrogare la tabella con le date finche' non dispongo dei risultati dell'interrogazione alla tabella con le partite.

    codice:
    <?php
    
    $selected = ' SELECTED ';
    
    $dbcnx = mysql_connect("$host", "$user_db", "$pass_db"); 
    mysql_select_db("$nome_db", $dbcnx);
    
    $res = mysql_query ("SELECT * FROM $tabella ORDER BY squadra_minuscolo"); 
    $num = mysql_num_rows ($res); 
    echo "SELEZIONA UNA SQUADRA PER VEDERNE IL CALENDARIO"; 
    echo "<select name=\"selezione\" onchange=\"this.form.submit()\">"; 
    
    while($selezione=mysql_fetch_array($res)){ 
        echo "<option value=\"$selezione[squadra_maiuscolo]\"";
    	if ($selezione['squadra_maiuscolo'] == $squadra){
    	echo $selected;
    	}
    	echo ">$selezione[squadra_maiuscolo]</option>"; 
    } 
    echo "</select>";
    
    
    mysql_close($dbcnx);
    ?>
    
    
    </form>
    </Td>
    </Tr>
    </Table>
    
    
    
    
    <?php
    
    $squadra = stripslashes($squadra);
    $squadraricerca = addslashes($squadra);
    
    echo "<Table Width=\"90%\" class=\"style8\" Align=\"Center\" Cellpadding=\"3\" Cellspacing=\"1\">"; 
    
      echo "<Tr>"; 
      echo "<Td align=\"center\" bgcolor=\"#D9D9D9\">"; 
      echo "PARTITE";
      echo $squadra;
      echo "";  
      echo "</Td>"; 
      echo "<Td align=\"center\" bgcolor=\"#D9D9D9\">"; 
      echo "DATA"; 
      echo "</Td>"; 
      echo "<Td align=\"center\" bgcolor=\"#D9D9D9\">"; 
      echo "RISULTATO"; 
      echo "</Td>"; 
      echo "<Td align=\"center\" bgcolor=\"#D9D9D9\">"; 
      echo "DATA"; 
      echo "</Td>"; 
      echo "<Td align=\"center\" bgcolor=\"#D9D9D9\">"; 
      echo "RISULTATO"; 
      echo "</Td>"; 
      echo "</Tr>";  
    	
    $dbcnx = mysql_connect("$host", "$user_db", "$pass_db");
    mysql_select_db("$nome_db", $dbcnx);
    $res = mysql_query ("select squadra1, squadra2, giornata_gara, risultato1a, risultato1r, risultato2a, risultato2r from $tabcalendario where squadra1 = '$squadraricerca' or squadra2 = '$squadraricerca' ORDER BY id_cal ASC"); 
    $num = mysql_num_rows ($res);
    
    for ($i=0; $i<$num; $i++)
     {
      $td1 = mysql_result ($res, $i, "giornata_gara");
      $td21 = mysql_result ($res, $i, "squadra1");
      $td22 = mysql_result ($res, $i, "squadra2");
      $td41 = mysql_result ($res, $i, "risultato1a");
      $td42 = mysql_result ($res, $i, "risultato2a");
      $td61 = mysql_result ($res, $i, "risultato1r");
      $td62 = mysql_result ($res, $i, "risultato2r");
      
      
      if (($i % 2) == 0)
         $color = "#EEEEEE";
     else
         $color = "#D9D9D9";
    	 
     
      echo "<Tr>";
      echo "<Td class=\"style10\" align=\"left\" bgcolor=\"$color\">";
      
      if ($td21 == "F.C.D. VILLANOVA"){
    	echo "";
    	}
    	if ($td21 == "F.C. VILLANOVA"){
    	echo "";
    	}
      
      
      echo $td21;
      
      
      if ($td21 == "F.C.D. VILLANOVA"){
    	echo "";
    	}
    	if ($td21 == "F.C. VILLANOVA"){
    	echo "";
    	}
      
      
      echo"-";
      
       
       if ($td22 == "F.C.D. VILLANOVA"){
    	echo "";
    	}
    	if ($td22 == "F.C. VILLANOVA"){
    	echo "";
    	}
      
      
      echo $td22;
      
      
      if ($td22 == "F.C.D. VILLANOVA"){
    	echo "";
    	}
    	if ($td22 == "F.C. VILLANOVA"){
    	echo "";
    	}
      
      echo "</Td>";
      
      echo "<Td class=\"style10\" align=\"center\" bgcolor=\"$color\">";
      echo $dataandata;
      echo "</Td>";
      
      echo "<Td class=\"style10\" align=\"center\" bgcolor=\"$color\">";
      echo $td41;echo"-";echo $td42;
      echo "</Td>";
      
      echo "<Td class=\"style10\" align=\"center\" bgcolor=\"$color\">";
      echo $dataritorno;
      echo "</Td>";
      
      echo "<Td class=\"style10\" align=\"center\" bgcolor=\"$color\">";
      echo $td61;echo"-";echo $td62;
      echo "</Td>";
      echo "</Tr>";
      
      
    } 
    
    mysql_close($dbcnx);
    ?>
    
    <?php
    
    $dbcnx = mysql_connect("$host", "$user_db", "$pass_db"); 
    mysql_select_db("$nome_db", $dbcnx);
    
    $res = mysql_query ("SELECT DATE_FORMAT(data_andata,'%d/%m/%Y') AS data_andata, DATE_FORMAT(data_ritorno,'%d/%m/%Y') AS data_ritorno FROM $giornategare  where giornata = '$td1' ORDER BY id_giornata ASC"); 
      $num = mysql_num_rows ($res);
    
    for ($i=0; $i<$num; $i++)
     {
    
      $dataandata = mysql_result ($res, $i, "data_andata");
      $dataritorno = mysql_result ($res, $i, "data_ritorno");
    
    
     } 
     
     mysql_close($dbcnx);
     
     ?>
    
    
    
    </Table>

  3. #3
    Ho risolto interrogando entrambi i db insieme:
    Codice PHP:
    $res mysql_query ("select squadra1, squadra2, giornata_gara, DATE_FORMAT(data_andata,'%d/%m/%Y') AS data_andata, DATE_FORMAT(data_ritorno,'%d/%m/%Y') AS data_ritorno, risultato1a, risultato1r, risultato2a, risultato2r from $tabcalendario$tabgiornate where squadra1 = '$squadraricerca' AND giornata_gara = giornata or squadra2 = '$squadraricerca' AND giornata_gara = giornata ORDER BY id_cal ASC"); 
    E' il metodo piu' adatto o ne esiste uno migliore ?

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 © 2024 vBulletin Solutions, Inc. All rights reserved.