【发布时间】:2017-11-27 07:01:40
【问题描述】:
我正在尝试在输入类型日期中显示默认值。 我要显示的日期是数据库中的日期(数据库中的格式是 2016-05-07 --- y-m-d),然后我确实将日期格式更改为 dd.mm.yyyy 并将其保存在变量 $DO 中。这部分我确实完成了。
但是当将值传输到输入字段类型日期时,问题就开始了。它不显示任何数据,但是当我回显变量 $DO 时,它会显示正确的日期和格式?
这是我的代码 php 代码:
<section id="sadrzaj">
<h1> Ažuriranje aktivnosti:
</h1>
<?php
$sql= "SELECT aktivnost.naziv NA, aktivnost.aktivnost_id AID , udruga.naziv UN, aktivnost.datum_odrzavanja DO,
aktivnost.vrijeme_odrzavanja VO, aktivnost.opis AO
FROM aktivnost, udruga
WHERE aktivnost.aktivnost_id='".$_GET['aktivnost_id']."'
AND udruga.moderator_id='".$_SESSION['id']."'
AND udruga.udruga_id=aktivnost.udruga_id ";
$rezUpita = izvrsiU($v4,$sql);
$rez3=mysqli_fetch_assoc($rezUpita);
if ($rez = mysqli_num_rows($rezUpita) == 0){
echo "Nemate aktivnosti.";
}
echo "<br/>";
$DO = $rez3['DO'];
$DO = str_replace('.','-', $DO);
$DO= date("d.m.Y",strtotime($DO));
echo $DO;
?>
<form action="<?php echo $_SERVER["PHP_SELF"]. '?'.'aktivnost_id='.$_GET['aktivnost_id']; ?>" method="POST">
<label for="NA">Naziv aktivnosti: </label><br/>
<input type="text" name="NA" value="<?php echo $rez3['NA']; ?>"><br><br>
<label for="DO">Datum održavanja aktivnosti: </label><br/>
<input type="date" name="DO" value="<?php echo $DO; ?>"><br><br>
<label for="VO">Vrijeme održavanja aktivnosti: </label><br/>
<input type="time" name="VO" value="<?php echo $rez3['VO']; ?>"><br><br>
<label for="AO">Opis aktivnosti: </label><br/>
<textarea name="AO" id="AO" maxlength="1000" rows="5" cols="100">
<?php echo $rez3['AO']; ?>
</textarea><br/><br>
<input type="submit" name="UpA" value="Ažuriraj"><br><br>
</form>
</section>
html 检查鞋的屏幕截图,正确的日期在值中但未显示。html inspector
【问题讨论】:
-
您的代码容易受到SQL injection 攻击。您应该通过mysqli 或PDO 驱动程序使用带有绑定参数的预处理语句。 This post 有一些很好的例子。