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

    Problema con casella di riepilogo

    Salve!
    mi serve una mano.
    Ho 2 tabelle.
    tabella 'anno ' con i campi: idanno (chiave autoincrement) e annorivista (text)
    tabella 'articoli ' con i campi idrivista (chiave autoincrement) descrizione, anno

    tramite una casella combinata che richiama l'annorivista dalla tabella anno, vorrei fare aprire il record corrispondente nella tabella articoli avente lo stesso anno .
    Purtroppo non funziona, ovvero una volta selezionato l'anno nella casella combinata, nel file rivista.php , apre una pagina vuota nel file rivista2.php .

    questo è il codice:
    rivista.php
    Codice PHP:
    <?php

    include("connessione.php");

    $sql="SELECT * from anno order by idanno";
    // seleziona tutti i record della tabella

    $risultato_query=mysql_query($sql,$connessione);
    // controlla il risultato della query attraverso la funzione mysql_query

    $num_righe=mysql_num_rows($risultato_query);
    // restituisce il numero di record ottenuto dalla selezione

    if($num_righe==0) {
             echo
    "NESSUN corso presente";
             
    // significa che la tabella è vuota
    }
    else{



    echo
    "<form method=\"get\" action=\"rivista2.php\">";
      
      echo
    "<select  name=\$idanno\">";
       while(
    $riga=mysql_fetch_array($risultato_query))
           {
         
                
             
    $idanno=$riga["idanno"];
             
    $annorivista=$riga["annorivista"];
            
                
                 echo
    "<option value=\"$idanno\">$annorivista</option>";

           }


    }         
                  
                  echo
    "</select>";
                   
     echo
    " </select></p>";
     echo
    "

    <input type=\"submit\" value=\"Invia\">"
    ;


    echo
    "</form>";
    ?>
    rivista2.php
    Codice PHP:
    <?


    include("connessione.php");


    $annorivista=$get_['annorivista'];
    $sql="SELECT * from articoli where anno='$annorivista' order by idrivista";
    // seleziona tutti i record della tabella

    $risultato_query=mysql_query($sql,$connessione);
    // controlla il risultato della query attraverso la funzione mysql_query

    $num_righe=mysql_num_rows($risultato_query);
    // restituisce il numero di record ottenuto dalla selezione


    echo "<table border=\"0\" >\n";
        
     
         while(
    $riga=mysql_fetch_array($risultato_query)){

                 
    $idrivista=$riga["idrivista"];
                 
    $descrizione=$riga["descrizione"];
                 
    $numero=$riga["numero"];
                 
    $anno=$riga["anno"];
                 
    $pdflink=$riga["pdflink"];


                echo 
    "<tr>\n";
                echo 
    "    <td width=\"16%\">$numero</td>\n";
                echo 
    "    <td width=\"16%\"><a href=\"$pdflink\"target=\"_blank\">$descrizione</a></td>\n";
                
                echo 
    "  </tr>\n";
                
    // echo"$nome, $cognome, $indirizzo, $citta,  $cellulare, $telefono
    ";
        }

    echo"
    </table>";

    ?>
    Grazie a tutti!

  2. #2
    Utente di HTML.it L'avatar di Il_Drugo
    Registrato dal
    May 2006
    Messaggi
    1,220
    C'erano una valanga di errori nel codice HTML e PHP. Spero di averli corretti tutti:

    Codice PHP:
    <?php
    include("connessione.php");
    if(!isset(
    $_GET['pass']))
    {
        
    $sql="SELECT * FROM anno ORDER BY idanno ASC";
        
    $risultato_query=mysql_query($sql,$connessione);
        
    $num_righe=mysql_num_rows($risultato_query);
        if(
    $num_righe==0
        {
            echo 
    "NESSUN corso presente";
        }
        else
        {
            echo
    "<form method='POST' action='?pass=1' onchange='this.form.submit();'>";
            echo
    "<select  name='idanno'>";
            while(
    $riga=mysql_fetch_array($risultato_query))
            {
                echo
    "<option value='".$riga['idanno']."'>".$riga['annorivista']."</option>";
            }
        }         
        echo
    "</select>";
        echo
    "</form>";
    }
    else
    {
        
    $annorivista=$_POST['annorivista'];
        
    $sql="SELECT * FROM articoli WHERE anno='".$annorivista."' ORDER BY idrivista";
        
    $risultato_query=mysql_query($sql,$connessione);
        
    $num_righe=mysql_num_rows($risultato_query);
        echo 
    "<table border='0' >\n";
        while(
    $riga=mysql_fetch_array($risultato_query))
        {
            
    $idrivista=$riga["idrivista"];
            
    $descrizione=$riga["descrizione"];
            
    $numero=$riga["numero"];
            
    $anno=$riga["anno"];
            
    $pdflink=$riga["pdflink"];
            echo 
    "<tr>\n";
            echo 
    "    <td width='16%'>".$numero."</td>\n";
            echo 
    "    <td width='16%'>[url='".$pdflink."']".$descrizione."[/url]</td>\n";
            echo 
    "  </tr>\n";
        }
        echo
    "</table>"
    }
    ?>

  3. #3
    Grazie x aver risposto.
    Purtroppo mi dà questp errore all'esecuzione

    Parse error: parse error, unexpected '[', expecting '(' in c:\programmi\easyphp1-7\www\portale3\pdf\vedi.php on line 3

    un aiuto?

  4. #4
    Utente di HTML.it L'avatar di Il_Drugo
    Registrato dal
    May 2006
    Messaggi
    1,220
    Ti ho corretto il codice sopra. c'era una parentesi sbagliata. Prova ora...

  5. #5
    spunta il form con la casella combinata che richiama il campo annorivista ma quando li seleziono non succede niente.

  6. #6
    Utente di HTML.it L'avatar di Il_Drugo
    Registrato dal
    May 2006
    Messaggi
    1,220
    Ho messo un SUBMIT OnChange della select...magari hai il JS disabilitato sul browser? Altrimenti non saprei. Il codice ora mi sembra corretto, a meno che non ci sia qualche errore di nomenclatura. Non ho modo di testarlo visto ch emi mancano i db. Al limite rimetti il form normale con un submit a bottone.

  7. #7
    non ho idea purtroppo di come modificare il tuo codice, mettendo un bottone per il form.
    Quei miei 2 file prima erano completamente da buttare? Li mi raccapezzo meglio passando con il form ad un altro file.

  8. #8
    Ho cercato di modificare i miei 2 file cercando di attingere al tuo codice, ma niente.
    Compare la casella combinata con gli anni, ma una volta selezionati e premuto il pulsante mi compare una pagina vuota.

    rivista.php

    Codice PHP:
    <?php

    include("connessione.php");

    $sql="SELECT * FROM anno ORDER BY idanno ASC";
    // seleziona tutti i record della tabella

    $risultato_query=mysql_query($sql,$connessione);
    // controlla il risultato della query attraverso la funzione mysql_query

    $num_righe=mysql_num_rows($risultato_query);
    // restituisce il numero di record ottenuto dalla selezione

    if($num_righe==0) {
             echo
    "NESSUN corso presente";
             
    // significa che la tabella è vuota
    }
    else{



    //echo"<form method=\"get\" action=\"rivista2.php\">";
      
      
    echo"<form method='POST' action=\"rivista2.php\">"
            echo
    "<select  name='idanno'>"
            while(
    $riga=mysql_fetch_array($risultato_query)) 
            { 
                echo
    "<option value='".$riga['idanno']."'>".$riga['annorivista']."</option>"
            } 
        }          
      
     echo
    " </select></p>";
     echo
    "

    <input type=\"submit\" value=\"Invia\">"
    ;


    echo
    "</form>";
    ?>
    rivista2.php
    Codice PHP:
    <?


    include("connessione.php");


     
    $annorivista=$_POST['annorivista']; 
        
    $sql="SELECT * FROM articoli WHERE anno='".$annorivista."' ORDER BY idrivista"
        
    $risultato_query=mysql_query($sql,$connessione); 
        
    $num_righe=mysql_num_rows($risultato_query); 
        echo 
    "<table border='0' >\n"
        while(
    $riga=mysql_fetch_array($risultato_query)) 
        { 
            
    $idrivista=$riga["idrivista"]; 
            
    $descrizione=$riga["descrizione"]; 
            
    $numero=$riga["numero"]; 
            
    $anno=$riga["anno"]; 
            
    $pdflink=$riga["pdflink"]; 
            echo 
    "<tr>\n"
            echo 
    "    <td width='16%'>".$numero."</td>\n"
            echo 
    "    <td width='16%'>[url='".$pdflink."']".$descrizione."[/url]</td>\n"
            echo 
    "  </tr>\n"
        } 
        echo
    "</table>"






    ?>
    Se hai o avete qualche aiuto? Se no grazie lo stesso.

  9. #9
    Utente di HTML.it L'avatar di Il_Drugo
    Registrato dal
    May 2006
    Messaggi
    1,220
    Nel form metti Method GET e poi lo riprendi in POST..........

  10. #10
    ...cambiato Post con Get, ma come prima

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.