Visualizzazione dei risultati da 1 a 7 su 7

Discussione: form con javascript

  1. #1

    form con javascript

    Ciao a tutti, domanda un po' da gnubbo ma sono alle prime esperienze con PHP...
    ho una pagina che recupera i dati da una tabella MySQL, avrei bisogno di effettuare la ricerca in base ad una selezione effettuata dall'utente, ed in particolare al periodo di riferimento; il classico da YYYY-MM-DD a YYYY-MM-DD.
    Ho inserito un piccolo script Javascript all'interno del mio form che consente di selezionare le date, partenza e arrivo. Se io richiedo onClick="javascript:alert(.....);" funziona perfettamente, il dialog box presenta correttamente i valori selezionati.
    Il mio problema è che non so come si fa a recuperare il valore della variabile e farlo passare al form alla pagina che poi effettua la query sul DB
    Qualcuno potrebbe gentilmente aiutarmi?
    posto parte del codice che ho scritto:

    Codice PHP:
    <?php
    include 'connect.php'
    require_once(
    'calendar/classes/tc_calendar.php');
    ?> 
    <HTML>
    <HEAD><title>Clienti</title>
    <script language="javascript" src="calendar/calendar.js"></script>
    </HEAD>
    <BODY> 

    <FORM name="form1" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
    <table>
    <tr>
    <td>


    <table width="100%" border="0" cellspacing="0" cellpadding="5">
      <tr>
          <table width="100%" border="0" cellspacing="0" cellpadding="5">
            <tr>
              <td>
                  
                  <p class="largetxt">[b]Date Pair Example[/b]</p>
                  <div style="float: left;">
                    <div style="float: left; padding-right: 3px; line-height: 18px;">from:</div>
                    <div style="float: left;">
                      <?php
                            $thisweek 
    date('W');
                            
    $thisyear date('Y');

                            
    $dayTimes getDaysInWeek($thisweek$thisyear);
                            
    //----------------------------------------

                            
    $date1 date('Y-m-d'$dayTimes[0]);
                            
    $date2 date('Y-m-d'$dayTimes[(sizeof($dayTimes)-1)]);

                            function 
    getDaysInWeek ($weekNumber$year$dayStart 1) {
                              
    // Count from '0104' because January 4th is always in week 1
                              // (according to ISO 8601).
                              
    $time strtotime($year '0104 +' . ($weekNumber 1).' weeks');
                              
    // Get the time of the first day of the week
                              
    $dayTime strtotime('-' . (date('w'$time) - $dayStart) . ' days'$time);
                              
    // Get the times of days 0 -> 6
                              
    $dayTimes = array ();
                              for (
    $i 0$i 7; ++$i) {
                                
    $dayTimes[] = strtotime('+' $i ' days'$dayTime);
                              }
                              
    // Return timestamps for mon-sun.
                              
    return $dayTimes;
                            }


                          
    $myCalendar = new tc_calendar("date3"truefalse);
                          
    $myCalendar->setIcon("calendar/images/iconCalendar.gif");
                          
    $myCalendar->setDate(date('d'strtotime($date1)), date('m'strtotime($date1)), date('Y'strtotime($date1)));
                          
    $myCalendar->setPath("calendar/");
                          
    $myCalendar->setYearInterval(19702020);
                          
    //$myCalendar->dateAllow('2009-02-20', "", false);
                          
    $myCalendar->setAlignment('left''bottom');
                          
    $myCalendar->setDatePair('date3''date4'$date2);
                          
    //$myCalendar->setSpecificDate(array("2011-04-01", "2011-04-04", "2011-12-25"), 0, 'year');
                          
    $myCalendar->writeScript();
                          
    ?>
                    </div>
                  </div>

                  <div style="float: left;">
                    <div style="float: left; padding-left: 3px; padding-right: 3px; line-height: 18px;">to</div>
                    <div style="float: left;">
                      <?php
                          $myCalendar 
    = new tc_calendar("date4"truefalse);
                          
    $myCalendar->setIcon("calendar/images/iconCalendar.gif");
                          
    $myCalendar->setDate(date('d'strtotime($date2)), date('m'strtotime($date2)), date('Y'strtotime($date2)));
                          
    $myCalendar->setPath("calendar/");
                          
    $myCalendar->setYearInterval(19702020);
                          
    //$myCalendar->dateAllow("", '2009-11-03', false);
                          
    $myCalendar->setAlignment('left''bottom');
                          
    $myCalendar->setDatePair('date3''date4'$date1);
                          
    //$myCalendar->setSpecificDate(array("2011-04-01", "2011-04-04", "2011-12-25"), 0, 'year');
                          
    $myCalendar->writeScript();
                          
    ?>
                    </div>
                  </div>
                  


                    <input type="button" name="button2" id="button2" value="Check the value" onClick="javascript:alert('Date select from '+this.form.date3.value+' to '+this.form.date4.value);">
                    
            
                  
                  </p>
              <hr>
              
          
      </tr>
    </table>


    </td>
    <td>
    <INPUT type="submit" name="submit" value="Invia">

    </td>
    </tr>
    </table>
    </FORM>



    <table width="75%" border="1">



    <?php if(isset($_POST['submit'])) { 
    $selezione=$_POST["selezione"];

    //QUI AVREI BISOGNO DI PASSARE ALL QUERY IL VALORE IMPOSTATO DALL'UTENTE.......
    $sql "SELECT * FROM student WHERE nomebiblio LIKE '%$selezione%'";
    $result mysql_query($sql);

    while(
    $row mysql_fetch_array($result))
    {
         
    // codice PHP per popolare i dati della tabella MYSQL
        
    }
      } 

      
    ?> 
    </table>
    </BODY>
    </HTML>

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    non so che librerie o classi tu stia usando... semplicemente guarda il sorgente generato e i tag input creati e quindi l'attributo "name" corrispondente... per recuperare i valori userai $_POST['nometag']

  3. #3
    ci avevo già provato, ma temo di sbagliare qualcosa.... non restituisce nulla.
    Codice PHP:
    echo $_REQUEST["button2"]; 
    come detto con PHP sono alle primissime esperienze, mi rendo conto che può sembrare banale, ma non mi è molto chiaro come mai.....
    se invece di usare la parte Javascript mi creo io una SELECT semplicissima

    grazie
    Codice PHP:
    <label>giorno inizio: <select name="ggInizio">  
    <?php  
    for($i=1;$i<=31;$i++) {  
    echo 
    '<option value="'.$i.'" name="'.$i.'">'.$i.'</option>';  
    }  
    ?>  
    </select>
    e poi all'interno del
    Codice PHP:
    <?php 
    $gIni 
    $_POST['ggInizio']; 

    if(isset(
    $_POST['submit'])) { 
    echo 
    "giorno inizio: ".$gIni
    //....
    }
    ?>
    allora funziona correttamente; sicuramente sbaglio qualcosa.... ma non so dove
    grazie 1000 per l'aiuto

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    metti un bel var_export($_POST);exit; e posta il risultato

  5. #5
    ecco:
    qweqwe array ( 'selezione' => 'Rip_15_2', 'date3' => '2012-01-09', 'date3_dp' => '1', 'date3_year_start' => '1970', 'date3_year_end' => '2020', 'date3_da1' => '', 'date3_da2' => '', 'date3_sna' => '', 'date3_aut' => '', 'date3_frm' => '', 'date3_tar' => '', 'date3_inp' => '', 'date3_fmt' => 'd-M-Y', 'date3_dis' => '', 'date3_pr1' => '', 'date3_pr2' => 'date4', 'date3_prv' => '2012-01-15', 'date3_pth' => 'calendar/', 'date3_spd' => '[[],[],[]]', 'date3_spt' => '0', 'date3_och' => '', 'date3_str' => '0', 'date3_rtl' => '', 'date3_wks' => '', 'date3_int' => '1', 'date3_hid' => '1', 'date3_hdt' => '1000', 'date4' => '2012-01-15', 'date4_dp' => '1', 'date4_year_start' => '1970', 'date4_year_end' => '2020', 'date4_da1' => '', 'date4_da2' => '', 'date4_sna' => '', 'date4_aut' => '', 'date4_frm' => '', 'date4_tar' => '', 'date4_inp' => '', 'date4_fmt' => 'd-M-Y', 'date4_dis' => '', 'date4_pr1' => 'date3', 'date4_pr2' => '', 'date4_prv' => '2012-01-09', 'date4_pth' => 'calendar/', 'date4_spd' => '[[],[],[]]', 'date4_spt' => '0', 'date4_och' => '', 'date4_str' => '0', 'date4_rtl' => '', 'date4_wks' => '', 'date4_int' => '1', 'date4_hid' => '1', 'date4_hdt' => '1000', 'submit' => 'Invia', )
    grazie

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    ora vedi tutti i campi, es.:

    codice:
    'date3' => '2012-01-09',
    significa che per recuperare quel valore devi usare $_POST['date3']

  7. #7
    risolto.....
    grazie

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.