-4

この機能をカレンダーのドロップダウンメニューとして使用しています。PHPの書き方がわかりません<inputtype ="text" ...

これは、ドロップダウンを生成するためのphp関数です。<inputtype="text"ステートメントを書くにはどうすればよいですか?

申し訳ありませんが、私はPHPを初めて使用しますが、これを行う方法がわかりませんか?

<?PHP 

    FUNCTION DateSelector($inName, $useDate=0) 
    { 
        /* create array so we can name months */ 
        $monthName = ARRAY(1=> "January", "February", "March", 
            "April", "May", "June", "July", "August", 
            "September", "October", "November", "December"); 

        /* if date invalid or not supplied, use current time */ 
        IF($useDate == 0) 
        { 
            $useDate = TIME(); 
        } 

        /* make month selector */ 
        ECHO "<SELECT NAME=" . $inName . "Month>\n"; 
        FOR($currentMonth = 1; $currentMonth <= 12; $currentMonth++) 
        { 
            ECHO "<OPTION VALUE=\""; 
            ECHO INTVAL($currentMonth); 
            ECHO "\""; 
            IF(INTVAL(DATE( "m", $useDate))==$currentMonth) 
            { 
                ECHO " SELECTED"; 
            } 
            ECHO ">" . $monthName[$currentMonth] . "\n"; 
        } 
        ECHO "</SELECT>"; 

        /* make day selector */ 
        ECHO "<SELECT NAME=" . $inName . "Day>\n"; 
        FOR($currentDay=1; $currentDay <= 31; $currentDay++) 
        { 
            ECHO "<OPTION VALUE=\"$currentDay\""; 
            IF(INTVAL(DATE( "d", $useDate))==$currentDay) 
            { 
                ECHO " SELECTED"; 
            } 
            ECHO ">$currentDay\n"; 
        } 
        ECHO "</SELECT>"; 

        /* make year selector */ 
        ECHO "<SELECT NAME=" . $inName . "Year>\n"; 
        $startYear = DATE( "Y", $useDate); 
        FOR($currentYear = $startYear - 5; $currentYear <= $startYear+5;$currentYear++) 
        { 
            ECHO "<OPTION VALUE=\"$currentYear\""; 
            IF(DATE( "Y", $useDate)==$currentYear) 
            { 
                ECHO " SELECTED"; 
            } 
            ECHO ">$currentYear\n"; 
        } 
        ECHO "</SELECT>"; 

    } 
?> 

<HTML> 
<BODY> 
<FORM> 
Choose a Date: <?PHP DateSelector( "Sample"); ?> 
</FORM> 
</BODY> 
</HTML>

私のコードの終わり。

前もって感謝します 。申し訳ありませんが、PHPは初めてです

4

2 に答える 2

0

選択された日付 (mysql 形式) が投稿されると仮定すると、次のようになります。

$mysql_date=$_POST['SampleYear'].'-'.$_POST['SampleMonth'].'-'.$_POST['SampleDay'];

'Sample' は例の $inName の値です

于 2012-08-26T04:28:49.533 に答える
0

日付のテキスト ボックスを追加する必要はありません。投稿された値を連結するだけで設定できます

$selected_date = $_POST['SampleYear'] . $_POST['SampleMonth'] . $_POST['SampleDay']; 

--

日付が必要な場合は、<input type="text" />jQuery を使用してこれを行うことができます。

// in the head of your document
  //this checks for when elements of date are changed
$(function() {
$('#SampleMonth').change(function(){ setSelectedDate();});
$('#SampleDay').change(function(){ setSelectedDate();});
$('#SampleYear').change(function(){ setSelectedDate();});
}
  // this changes the text box to the values of the selects
Function setSelectedDate(){
var sel_month = $('#SampleMonth').val();
var sel_day = $('#SampleDay').val();
var sel_year = $('#SampleYear').val();
var new_sel_date = sel_year + "-" + sel_month + "-" + sel_day;
  // note that this puts the date as YYYY-MM-DD, which is the proper way to insert into mysql. It can be set as MM/DD/YYYY, but then you would have to change it again after posting.
$('#purchasedate').val(new_sel_date);
}

// inside the form tags
<input type="text" id="purchasedate" name="invoice_date" value="" readonly="true" />

次に、投稿された値を介して入力できます

$selected_date = $_POST['purchasedate'];
于 2012-08-26T04:29:22.580 に答える