passaggio di parametri a pagina con frame

Ciao,

ho una pagina formata da 2 frame(sotto e sopra), devo ricevere dei parametri sul frame superiore da una pagina htm precedente. come faccio? cosa devo scrivere nel form?

grazie mille

inviato 10 anni fa
mauro1980
X 0 X

E' da un pò che non li uso più, ma vediamo se ti posso aiutare.

Supponiamo che tu abbia definito in index.htm:

<frameset rows="20%,80%" framespacing="0" frameborder="no" border="0">
  <frame name="sopra" src="sopra.php" >
  <frame name="sotto" src="sotto.php" >
</frameset>         

1.Da frame a frame - se vuoi cambiare il frame superiore con il nuovo contenuto devi scrivere:

<form action="nuovocontenuto.php" target="sopra" method="POST">
...
</form>

in pratica dici di inviare i dati del form con metodo POST nel frame sopra , questi saranno interpretati da nuovocontenuto.php. Analogamente per sotto, cambiando il target.

Queste variazioni puoi farle da un frame all'altro frame (cioe form nel frame di sotto e destinazione sopra e viceversa).

2.Se passi da una pagina html a quella con i frame (supponiamo index.htm), devi specificare nel form:

<form action="index.htm" target="" method="POST">
...
</form>

all'interno di sopra.php e sotto.php ci saranno le funzioni che dovranno analizzare i dati provenienti dal metodo POST.

Spero di essere stato chiaro.

 :bye:

risposto 10 anni fa
Nico Colonna
X 0 X

ciao,

tra  i due frame della stessa pagina avevo già provato e funzionavano..

ma quello dalla pagina precedente non va..

ho provato anche con il metodo get, nella barra degli indirizzi si leggono i parametri ma le 2 pagine php non gli leggono, come mai?

 :wallbash:

risposto 10 anni fa
mauro1980
X 0 X

Posta i nomi dei frame e il form della pagina html da cui richiami la pagina con i frame.

 :bye:

risposto 10 anni fa
Nico Colonna
X 0 X

il form

<form method="POST" action="index_storico.html" target"";
   <p align="center" style="margin-top: 0; margin-bottom: 0">
   <font face="Tahoma" size="2">Inserisci la data che vuoi interrogare</font></p>
   <p align="center" style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
   <table border="0" width="20%" id="table1" cellspacing="1" cellpadding="0">
      <tr>
         <td><font face="Tahoma" size="2">giorno</font></td>
         <td><font face="Tahoma"><input type="text" name="gg" size="2"></font></td>
      </tr>
      <tr>
         <td><font face="Tahoma" size="2">mese</font></td>
         <td><font face="Tahoma">
         <select size="1" name="mm" style="font-family: Tahoma; font-size: 10pt; text-align: left">
            <option>1
            <option>2
            <option>3
            <option>4
            <option>5
            <option>6
            <option>7
            <option>8
            <option>9
            <option>10
            <option>11
            <option>12
         </select>
         </font></td>
      </tr>
      <tr>
         <td><font face="Tahoma" size="2">anno</font></td>
         <td><font face="Tahoma">
         <select size="1" name="aaaa" style="font-family: Tahoma; font-size: 10pt; text-align: left">
            <option>2006
            <option>2005
            <option>2004
         </select>
         </font></td>
      </tr>
   </table>
   <p align="center" style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
   <p align="center" style="margin-top: 0; margin-bottom: 0">
   <font face="Tahoma" size="2">
   <input type="submit" value="Invia" name="B1">
   <input type="reset" value="Cancella" name="B2"></font></p>
   <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
</form>

e la pagina con frame

<frameset rows="203,*" framespacing="0" border="0" frameborder="0">
   <frame name="header" scrolling="no" noresize target="main" src="sopra.php">
   <frame name="main" src="sotto.php" scrolling="auto" noresize>
   <noframes>
   <body>

   </body>
   </noframes>
</frameset>
risposto 10 anni fa
mauro1980
X 0 X

index_storico.html contiene i frames vero?

In ogni caso ci sono un pò di errori nel form, prova a corregerlo in:

<form method="POST" action="index_storico.html" target"">
   <p align="center" style="margin-top: 0; margin-bottom: 0">
   <font face="Tahoma" size="2">Inserisci la data che vuoi interrogare</font></p>
   <p align="center" style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
   <table border="0" width="20%" id="table1" cellspacing="1" cellpadding="0">
      <tr>
         <td><font face="Tahoma" size="2">giorno</font></td>
         <td><font face="Tahoma"><input type="text" name="gg" size="2"></font></td>
      </tr>
      <tr>
         <td><font face="Tahoma" size="2">mese</font></td>
         <td><font face="Tahoma">
         <select size="1" name="mm" style="font-family: Tahoma; font-size: 10pt; text-align: left">
            <option>1</option>
            <option>2</option>
            <option>3</option>
            <option>4</option>
            <option>5</option>
            <option>6</option>
            <option>7</option>
            <option>8</option>
            <option>9</option>
            <option>10</option>
            <option>11</option>
            <option>12</option>
         </select>
         </font></td>
      </tr>
      <tr>
         <td><font face="Tahoma" size="2">anno</font></td>
         <td><font face="Tahoma">
         <select size="1" name="aaaa" style="font-family: Tahoma; font-size: 10pt; text-align: left">
            <option>2006</option>
            <option>2005</option>
            <option>2004</option>
         </select>
         </font></td>
      </tr>
   </table>
   <p align="center" style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
   <p align="center" style="margin-top: 0; margin-bottom: 0">
   <font face="Tahoma" size="2">
   <input type="submit" value="Invia" name="B1">
   <input type="reset" value="Cancella" name="B2"></font></p>
   <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
</form>

Inoltre sopra.php (che è lo script che contenuto nel frame header) o sotto.php (che è lo script che contenuto nel frame main) deve contenere lo script necessario ad elaborare i dati del form.

 :bye:

risposto 10 anni fa
Nico Colonna
X 0 X

non è cambiato un granchè..

ecco cosa c'è in "sopra.php", proprio una cosa semplice per vedere se funziona, ma niente... bianco..

$mm1=$_POST['mm'];

echo $mm1;

risposto 10 anni fa
mauro1980
X 0 X

Comincio a credere che non si possa fare!  :giveup:

risposto 10 anni fa
Nico Colonna
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda