挑戰PHPMySQL(第三版)第7章問題 |
|
aries
更新時間:2015/9/30 下午 05:01:35 |
|
您好:
請問第7-36頁範例程式第16行, <input name=..........id="passwd">
請問那個id="passwd"是做什麼用的? 這是屬於php語法還是html語法?
謝謝!
|
|
|
|
aries
更新時間:2015/10/1 上午 11:20:52 |
|
執行結果顯示如下: Notice: crypt(): No salt parameter was specified. You must use a randomly generated salt and a strong hash function to produce a secure hash. in C:\htdocs\php_strfun22.php on line 4 密碼 abc 驗證通過 a href='#' onclick='window.history.back();';>回上一頁
到底是哪裡寫錯啦? 以下附上程式
<?php if(isset($_POST["passwd"]) && $_POST["passwd"]!="") { $passStr=crypt("abc"); $inputStr=$_POST["passwd"]; if(crypt($inputStr,$passStr)==$passStr) { echo "密碼 $inputStr 驗證通過<br/>"; echo "a href='#' onclick='window.history.back();';>回上一頁</a>"; }else { echo "密碼 $inputStr 驗證失敗<br/>"; echo "a href='#' onclick='window.history.back();';>回上一頁</a>"; } }else { ?> <form action="" name="form1" method="POST"> 密碼 <input name="passwd" type="password" id="passwd"> <input type="submit" name="submit" value="驗證"> </form>
<?php } ?> |
|
|
|
aries
更新時間:2015/10/1 上午 11:28:12 |
|
echo後少個<
但程式更正後依然有問題, Notice: crypt(): No salt parameter was specified. You must use a randomly generated salt and a strong hash function to produce a secure hash. in C:\htdocs\php_strfun22.php on line 4 密碼 abc 驗證通過 回上一頁
<?php if(isset($_POST["passwd"]) && $_POST["passwd"]!="") { $passStr=crypt("abc"); $inputStr=$_POST["passwd"]; if(crypt($inputStr,$passStr)==$passStr) { echo "密碼 $inputStr 驗證通過<br/>"; echo "<a href='#' onclick='window.history.back();';>回上一頁</a>"; }else { echo "密碼 $inputStr 驗證失敗<br/>"; echo "<a href='#' onclick='window.history.back();';>回上一頁</a>"; } }else { ?> <form action="" name="form1" method="POST"> 密碼 <input name="passwd" type="password" id="passwd"> <input type="submit" name="submit" value="驗證"> </form>
<?php } ?> |
|
|
|
文淵閣工作室
更新時間:2015/10/3 上午 10:02:29 |
|
您好,首先Notice不是錯誤,而是個提醒。 這個訊息是說 crypt() 要加入一個參數做為加密干擾,但是這個參數在官方的說明檔 中設定為可選填的項目,也就是不一定要設定。以我們的環境(php5.4.7)來說,原來的程式在執行以及使用您的程式來執行都不會出現! 我們有再查詢網路上的討論,對於這個提醒訊息的資料也很少,您可以參考: http://php.net/manual/en/function.crypt.php
建議您可以參考 2-14 頁修改 php.ini 將 error_reporting 設定改為 E_ALL & ~E_NOTICE。 |
|
|
|