include問題
getVerify直接用../lib/image.func.php可以顯示驗證碼,用../include.php就不行了
翻了很多評論和問答,照著你們說的加入ob_clean();不行
刪除了image.func.php里面的session_start();也不行
所以到底是個什么問題呢
include里面是照著下載的源碼搬運的
<?php?
session_start();
define("ROOT",dirname(__FILE__));
set_include_path(".".PATH_SEPARATOR.ROOT."/lib".PATH_SEPARATOR.ROOT."/core".PATH_SEPARATOR.ROOT."/configs".PATH_SEPARATOR.get_include_path());
2016-05-10
我開始也遇到和樓主一樣問題,然后把老師寫的include.php里面的session_start();注釋掉就ok了,或者把image.func.php里面的session_start();注釋掉,也是ok的。
2016-04-28
我出現了和你一樣的問題,include.php文件就顯示不了驗證碼,下面是我的代碼相關截圖,求解:
下面是login.php頁面顯示,其他HTML文件都么有添加
下面是運行getVerify.php頁面的情況
在加入include.php和修改getVerify.php文件前都是沒有問題的
2016-04-20
已經解決。
你先看一下你的lib文件夾下有多少.php文件,我的如下:
然后修改include.php文件的內容,把你的lib內不存在的文件都給注釋掉,如圖:
其實這樣修改好保存,再調用login.php就能看見驗證碼圖片了。但以防萬一再注意下getVerify.php引用include.php的路徑有沒有出錯,如我的路徑及getVerify.php內容:
(如圖,getVerify.php在/admin路徑下,于是include.php就在相較于它的父目錄下)
確保無誤后,可以在瀏覽器上打開login.php看看效果(我的login.php,getVerify.php都在/admin下):
大功告成,如果有強迫癥呢,你還可以修改下/lib/image.func.php,如果它的引用還是“ require_once 'string.func.php'; ”那就統一改成“?? require_once '../include.php'; ”。
總結:
所以這次驗證碼顯示不了的問題就是出在include.php的內容里,老師提供下載的include.php是完整代碼,而我們大部分都是自己跟著老師一步步敲的,后面好多功能還沒實現,/lib下也就沒有相應的.php文件,這個時候我們在include.php里引用不存在的文件它就出錯了,一出錯include.php就尥蹶子不干了= =,它個找路的都不工作了,后面的當然就都瞎了。所以先欺騙下include.php,把那些不存在.php文件注釋掉,它個小傻子就又屁顛屁顛的爬起來工作了,哈哈
希望能幫助到題主。
2016-04-15
好吧,問題解決了,總結是我煞筆的照著源碼抄的鍋
我把include里面的require_once 'mysql.func.php';這句刪除后就沒問題了_(:3」∠)_
2016-04-15
順帶一提,把include名字改成其他的也試過了,還是不行_(:3」∠)_