Newsgroup: it.comp.os.linux.development
Titolo: php e html: problema form

Salve NG,
Ho da poco preso in mano il php e l'html. Sto cercando di modificare un 
programma che gira su apache, utilizza un database mysql e sfrutta il 
linguaggio php e naturalmente l'html. 
Il problema e' questo:
ho una form dove l'utente tramite il suo browser immette i dati relativi ad 
una data e poi preme submit per  inviare i dati immessi. Io dovrei 
elaborare i dati con php (aggiorno la variabile $mese e $anno) e poi 
riaprire la stessa form con i dati aggiornati (con la nuova data).
1)Pensavo di inviare la form a un file php e poi ritornare alla form 
precedente. Ma come si fa a fare un link automatico col php  per tornare 
indietro ?
2)Pensavo anche di creare una function php all'interno del file con la form 
la quale riapre lo stesso file, ma temo che l'opzione OnSubmit (del tag 
form) funzioni solo con java.
Sono molto newbie :) qualche idea ?
Grazie, Nicola.
-- 
______________________________
chi va pian va san e va lontan

form) funzioni solo con java.
Ti consiglio si chiarirti un po' le idee e studiarti bene tutorial e
manuali prima di addentrarti nei dettagli, altrimenti rischi di fare
troppa confusione; infatti, il php gira sul server, quindi non puoi
eseguire nulla sul client, al client arriva l'html generato dal
php, e l'evento onSubmit e' relativo al *javaSCRIPT* che non e' java.
Bonf

 e l'evento onSubmit e' relativo al *javaSCRIPT* che non e' java.
Questo invece rende piu' chiare le cose: onSubmit non funge con PHP.
Grazie, Nicola.
P.S. le idee le sto schiarendo man mano che imparo :)


Questo invece rende piu' chiare le cose: onSubmit non funge con PHP.
Ok, come vuoi tu.
Bonf

 wrote:

Ehmm... dopo qualche ora sono arrivato a questo:
<form method="post" action= "./cal.php3?m=<?php echo $month; ?>&y=<?php 
echo $year; ?>"su name="form_date">
Le variabili $month e $year sono impostate tramite i tag select.
Purtroppo pero' le variabili m e y sono impostate con i valori di $month e 
$year solo dopo che e' stato eseguito cal.php3. Infatti se premo submit 2 
volte di fila allora m e y ricevono i valori precedenti. Io vorrei che 
cal.php3 fosse eseguito dopo aver impostato m e y.
Spero di essere stato piu' chiaro (pin piano cerco di  capire quello che 
faccio).
Grazie, Nicola.


faccio).
Non ho capito esattamente cosa vuoi fare, prova a postare cal.php.
Bonf 

 it.comp.www.php
Ok, grazie, questo lo sottoscrivo :)


 wrote:

Eh, ci proviamo (il codice originale e' del programma calendar che ho 
scaricato su freshmeet).
<?php
require("../api/cal.api");
//////// Language /////////////////////////////////////////////
    global $cal_txt;
    if (!isset($cal_txt))
    $cal_txt = array( "Back to main menu.");
//////////////////////////////////////////////////////////////////////
/////// Connect to mysql /////////////////////////////
$connect = db_connect();
mysql_select_db($GLOBALS["db"]);
$query = "SELECT admin_id,admin_name FROM calendar_administrators ORDER BY 
admin_name";
$result = mysql_query($query);
if( !$result ){
  echo mysql_error() . ": " . mysql_errno();
}
mysql_close($connect);
//////////////////////////////////////////////////////////////////////
?>
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
  <title>calendar test</title>
</head>
<?php
 js_popup();
 $sc_date = "./cal.php3";
 $pippo = 12;
?>
<body bgcolor="#ffffff">
<?php
if( !$y ) $y = date("Y");
if( !$m ) $m = date("m");
$mymonth = new month($m,$y);
echo "<h3>Calendar For: $mymonth->month_name, $mymonth->year</h3><br>\n";
?>
<form method="post" action= "./cal.php3?m=<?php echo $month; ?>&y=<?php 
echo $year; ?>"su name="form_date">
  <table cellspacing="0" cellpadding="0" border="0" height="100">
    <tr>
      <td width="50" height="20" valign="top"></td>
      <td width="200" height="20" valign="top"></td>
      <td width="20" height="20" valign="top"></td>
      <td width="285" height="20" valign="top"></td>
    </tr>
    <tr>
        <td width="50" height="80" valign="top"></td>
        <td width="200" height="80" valign="top">
        <p><font face="Verdana, Arial, Helvetica, sans-serif">
           <?PHP
               echo $post_event_txt[0];
            ?>
         </font></p>
        <p>
          <select name="admin_id">
<?php
        for( $i=0 ; $i < mysql_num_rows($result) ; $i++ ){
         $row = mysql_fetch_array($result);
        echo "            <option value=\"" .$row["admin_id"] . "\">" . 
$row["admin_name"];
        echo  "</option>\n";
        }
?>
          </select>
        </p>
      </td>
      <td width="20" height="80" valign="top"></td>
      <td width="285" height="80" valign="top">
        <p><font face="Verdana, Arial, Helvetica, sans-serif">
        <b>
           <?PHP
               echo "mese";
            ?>
       </b>
     </font></p>
   <p>
<?PHP
//////////////// create month and year droplist  
/////////////////////////////////////////////
print "<select name=\"month\">\n";
$month = "1";
while ($month < 13) {
  $monname = date( "M", mktime(0,0,0,$month,1,2000) );
  // select current date
  if( $monname == date("M") )
     print "<option value=\"$month\" selected>$monname</option>\n";
  else
     print "<option value=\"$month\">$monname</option>\n";
  $month++;
}
print "</select>\n\n";
?>
           <select name="year">
            <option value="<? print date(Y) -1; ?>"><? print date(Y) -1; 
?></option>
            <option value="<? print date(Y); ?>" selected><? print date(Y); 
?></option>
            <option value="<? print date(Y) +1; ?>"><? print date(Y) +1; 
?></option>
            <option value="<? print date(Y) +2; ?>"><? print date(Y) +2; 
?></option>
            <option value="<? print date(Y) +3; ?>"><? print date(Y) +3; 
?></option>
            <option value="<? print date(Y) +4; ?>"><? print date(Y) +4; 
?></option>
            <option value="<? print date(Y) +5; ?>"><? print date(Y) +5; 
?></option>
            <option value="<? print date(Y) +6; ?>"><? print date(Y) +6; 
?></option>
            <option value="<? print date(Y) +7; ?>"><? print date(Y) +7; 
?></option>
            <option value="<? print date(Y) +8; ?>"><? print date(Y) +8; 
?></option>
            <option value="<? print date(Y) +9; ?>"><? print date(Y) +9; 
?></option>
            <option value="<? print date(Y) +10; ?>"><? print date(Y) +10; 
?></option>
            <option value="<? print date(Y) +11; ?>"><? print date(Y) +11; 
?></option>
            <option value="<? print date(Y) +12; ?>"><? print date(Y) +12; 
?></option>
            <option value="<? print date(Y) +13; ?>"><? print date(Y) +13; 
?></option>
          </select>
       <input type="submit" name="Submit" value="Ok">
   </TABLE>
</FORM>
<a href="./cal.php3?m=<?php echo $mymonth->prevmonth; ?>&y=<?php echo 
$mymonth->prevyear; ?>">Prev.</a>
  &nbsp;
<a href="./cal.php3?m=<?php echo $mymonth->nextmonth; ?>&y=<?php echo 
$mymonth->nextyear; ?>">Next.</a>
<BR>
<?php
////////////////////// Create table 
////////////////////////////////////////////
echo "<table width=\"85%\" cellpadding=\"0\" cellspacing=\"0\" 
border=\"0\">\n";
echo "<tr>\n";
echo "  <td bgcolor=\"#000066\">\n";
$mymonth->draw(array("cellspacing" => "2" , "cellpadding" => "2" ,
                      "top_row_align" => "center" , "table_height" => 
"300px" ,
                      "top_row_cell_height" => 20 , "bgcolor" => "#cccccc" ,
                      "row_align" => "left" , "row_valign" => "top" ,
                      "font_size" => "-1") );
echo "  </td>\n";
echo "</tr>\n";
echo "</table>\n";
?>
<BR>
<a href="../index.php3">
  <?PHP
     echo $cal_txt[0];
  ?>
</a>
<BR>
</body>
</html>
