这样建入口文件哪里错了呢
本帖最后由 ziluopao3 于 2014-09-25 15:41:13 编辑 我在discuz根目录下建了一个名为test.php的文件,主要是仿制forum.php这个文件里面的内容,有些删了,代码如下
<br /><?php<br /><br />/**<br /> * [Discuz!] (C)2001-2099 Comsenz Inc.<br /> * This is NOT a freeware, use is subject to license terms<br /> *<br /> * $Id: forum.php 33828 2013-08-20 02:29:32Z nemohou $<br /> */<br /><br /><br />define('APPTYPEID', 88);<br />define('CURSCRIPT', 'test');<br /><br /><br />require './source/class/class_core.php';<br /><br /><br />require './source/function/function_forum.php';<br /><br /><br /><br /><br /><br />$siteuniqueid = C::t('portal_category')->fetch('catname');<br />while($value=DB::fetch($siteuniqueid)){<br /> $data[]=$value;<br /> }<br />print_r($data);<br />echo $data[0];<br />?>
Copy after login
建这个文件的目录是做测试用的,比如有一个表portal_category,里面有一个字段catname,我想用这个新建文件做试验,打印出catname字值下的所有的值,但是在地址栏中输入http://localhost/test.php 后,结果是空白,但不报错,不知为啥
------解决思路----------------------$siteuniqueid = C::t('portal_category')->fetch('catname');
fetch括号里面只能是主键id,也就说只能为数字(可以查看\source\class\discuz\discuz_table.php里面的fetch)
用C类执行后不需要,返回的不是资源类型,你不需要用DB::fetch
实际上只有用DB::query查询的语句,返回的才是资源类型
所以,你应该改为:
$data = C::t('portal_category')->fetch(1);
print_r($data);