2014-01-07 91 views
1

我有一個PHP頁面更新SQL DB。我有4個訪問日期的字段。這是第一次訪問第二次訪問...值改變了頁面沒有輸入

問題是通過訪問該頁面的所有日期設置爲'0000-00-00',如果我不給一個值。我希望顯示器將它們顯示爲空白。

有沒有辦法不改變價值?

EDITS:有四個文本框顯示我輸入日期的日曆。但是,我一次只添加一個日期,所以其他框不會收到用戶輸入。不管這些頁面在加載「空白」字段後得到「0000-00-00」。

然後他們顯示0。我沒有想過改變顯示屏而不是輸入。我可以檢查一下。

下面的解決方案似乎都不會停止將字段更改爲0000-00-00。它發生在我身上,也許這只是sql對訪問單元格的反應。

<tr> 
        <td class="LabelColumn" <?php addToolTip("Format: YYYY-MM-DD<br>or enter the date by clicking on the calendar icon to the right."); ?>><?php echo gettext("Friend Date1:"); ?></td> 
        <td class="TextColumn"><input type="text" name="FriendDate1" value="<?php echo $dFriendDate1; ?>" maxlength="10" id="sel1" size="11">&nbsp;<input type="image" onclick="return showCalendar('sel1', 'y-mm-dd');" src="Images/calendar.gif"> <span class="SmallText"><?php echo gettext("[format: YYYY-MM-DD]"); ?></span><font color="red"><?php echo $sFriendDateError ?></font></td> 
       </tr> 

       <tr> 
        <td class="LabelColumn" <?php addToolTip("Format: YYYY-MM-DD<br>or enter the date by clicking on the calendar icon to the right."); ?>><?php echo gettext("Friend Date2:"); ?></td> 
        <td class="TextColumn"><input type="text" name="FriendDate2" value="<?php echo $dFriendDate2; ?>" maxlength="10" id="sel2" size="11">&nbsp;<input type="image" onclick="return showCalendar('sel2', 'y-mm-dd');" src="Images/calendar.gif"> <span class="SmallText"><?php echo gettext("[format: YYYY-MM-DD]"); ?></span><font color="red"><?php echo $sFriendDateError ?></font></td> 
       </tr> 

       <tr> 
        <td class="LabelColumn" <?php addToolTip("Format: YYYY-MM-DD<br>or enter the date by clicking on the calendar icon to the right."); ?>><?php echo gettext("Friend Date3:"); ?></td> 
        <td class="TextColumn"><input type="text" name="FriendDate3" value="<?php echo $dFriendDate3; ?>" maxlength="10" id="sel3" size="11">&nbsp;<input type="image" onclick="return showCalendar('sel3', 'y-mm-dd');" src="Images/calendar.gif"> <span class="SmallText"><?php echo gettext("[format: YYYY-MM-DD]"); ?></span><font color="red"><?php echo $sFriendDateError ?></font></td> 
       </tr> 

       <tr> 
        <td class="LabelColumn" <?php addToolTip("Format: YYYY-MM-DD<br>or enter the date by clicking on the calendar icon to the right."); ?>><?php echo gettext("Friend Date4:"); ?></td> 
        <td class="TextColumn"><input type="text" name="FriendDate4" value="<?php echo $dFriendDate4; ?>" maxlength="10" id="sel4" size="11">&nbsp;<input type="image" onclick="return showCalendar('sel4', 'y-mm-dd');" src="Images/calendar.gif"> <span class="SmallText"><?php echo gettext("[format: YYYY-MM-DD]"); ?></span><font color="red"><?php echo $sFriendDateError ?></font></td> 
       </tr> 
+0

如何你在設置'$ dFriendDate1'等嗎?修復它。 – Barmar

+0

說明「不要給價值」。 – PHPglue

回答

2

你可以很容易地通過一個速記做這個if語句

例如:

value="<?php echo (!empty($dFriendDate3) && $dFriendDate3!='0000-00-00') ? $dFriendDate3 : ''; ?>" 
0

@skrilled看法是正確的,但是,試試這個來代替:

value="<?php echo $dFriendDate1 === '0000-00-00' ? '' : $dFriendDate1; ?>" 
+0

@ skrilled的答案正確處理了變量實際設置爲'0000-00-00'的情況,其中與您的顯示爲空白。這也不處理變量爲空的情況,這是原始問題。 – ernie