我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: PHP疑难(在风中问了3个星期都无解,这里哪位大侠搞定了感激不尽) 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

neveredge





性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 371
威望: 0
浮云: 1138
在线等级:
注册时间: 2006-11-10
最后登陆: 2009-06-05

5come5帮你背单词 [ regularity /regju'læriti/ n. 定期,规律性 ]


PHP疑难(在风中问了3个星期都无解,这里哪位大侠搞定了感激不尽)

为什么PHP连不上MySQL?我用的是书(PHP and MySQL Web Development第三版)上的源程序,怎么还不行啊~苦恼~~
其中有一句 "$db = new mysqli('localhost', 'bookorama', 'bookorama123', 'books');"
提示:Fatal error: Trying to clone an uncloneable object of class mysqli in D:\RUIOA\webroot\results.php on line 26
(libmysqli.dll已经复制到C:\WINDOWS下了)
php.ini中已有"extension=php_mysqli.dll"它的;号已经去掉.完整代码另复
顶端 Posted: 2006-11-10 16:07 | [楼 主]
neveredge





性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 371
威望: 0
浮云: 1138
在线等级:
注册时间: 2006-11-10
最后登陆: 2009-06-05

5come5帮你背单词 [ lost /lost/ a. 失去的,错过的,浪费掉的,无望的,迷路的 ]


代码如下:
<?php
// create short variable names
$searchtype=$_POST['searchtype'];
$searchterm=$_POST['searchterm'];

$searchterm= trim($searchterm);

if (!$searchtype || !$searchterm)
{
echo 'You have not entered search details. Please go back and try again.';
exit;
}

if (!get_magic_quotes_gpc())
{
$searchtype = addslashes($searchtype);
$searchterm = addslashes($searchterm);
}

$db = new mysqli('localhost', 'bookorama', 'bookorama123', 'books');

if (mysqli_connect_errno())
{
echo 'Error: Could not connect to database. Please try again later.';
exit;
}

$query = "select * from books where ".$searchtype." like '%".$searchterm."%'";
$result = $db->query($query);

$num_results = $result->num_rows;

echo '<p>Number of books found: '.$num_results.'</p>';

for ($i=0; $i <$num_results; $i++)
{
$row = $result->fetch_assoc();
echo '<p><strong>'.($i+1).'. Title: ';
echo htmlspecialchars(stripslashes($row['title']));
echo '</strong><br />Author: ';
echo stripslashes($row['author']);
echo '<br />ISBN: ';
echo stripslashes($row['isbn']);
echo '<br />Price: ';
echo stripslashes($row['price']);
echo '</p>';
}

$result->free();
$db->close();
?>
顶端 Posted: 2006-11-10 16:07 | [1 楼]
neveredge





性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 371
威望: 0
浮云: 1138
在线等级:
注册时间: 2006-11-10
最后登陆: 2009-06-05

5come5帮你背单词 [ define /di'fain/ vt. 解释,给…下定义,限定 ]


这是配套的html,哪位能不能在自己的电脑上试一下
<html>
<head>
<title>Book-O-Rama Catalog Search</title>
</head>

<body>
<h1>Book-O-Rama Catalog Search</h1>

<form action="results.php" method="post">
Choose Search Type:<br />
<select name="searchtype">
  <option value="author">Author</option>
  <option value="title">Title</option>
  <option value="isbn">ISBN</option>
</select>
<br />
Enter Search Term:<br />
<input name="searchterm" type="text">
<br />
<input type="submit" value="Search">
</form>

</body>
</html>
顶端 Posted: 2006-11-10 16:08 | [2 楼]
sunbin



特殊贡献奖 爱心大使勋章
性别: 帅哥 状态: 该用户目前不在线
等级: 资政组
发贴: 3649
威望: 11
浮云: 202
在线等级:
注册时间: 2005-10-18
最后登陆: 2024-07-05

5come5帮你背单词 [ east /i:st/ n. & a. 东方(的),东部(的);ad. 向东方 ]


光是这两段代码肯定是运行不起的。
请把定义mysqli类的源码发上来。

results.php用的是自定义的数据库查询函数,函数被定义在mysqli类中。
假设定义mysqli类的文件名为mysql.php(我假设的),还应该在results.php加入
require_once('mysql.php');

蝈蝈在吗?


[ 此贴被sunbin在2006-11-10 19:11重新编辑 ]
顶端 Posted: 2006-11-10 16:53 | [3 楼]
disneycheng



性别: 帅哥 状态: 该用户目前不在线
头衔: Piano Prince
等级: 荣誉会员
发贴: 1971
威望: 1
浮云: 413
在线等级:
注册时间: 2005-12-16
最后登陆: 2008-06-29

5come5帮你背单词 [ file /fail/ n. 档案,(计算机)文件;vt. 把…归档 ]


可惜不懂php哦。
顶端 Posted: 2006-11-10 18:46 | [4 楼]
neveredge





性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 371
威望: 0
浮云: 1138
在线等级:
注册时间: 2006-11-10
最后登陆: 2009-06-05

5come5帮你背单词 [ eloquent /'eləkwənt/ a. 雄辩的,有口才的,有说服力的 ]


源码在哪呢?(我是初学者,很多不懂)
我在php.ini中设置了"extension=php_mysqli.dll"应该是加载了mysqli类的,不明白......
顶端 Posted: 2006-11-10 23:14 | [5 楼]
sunbin



特殊贡献奖 爱心大使勋章
性别: 帅哥 状态: 该用户目前不在线
等级: 资政组
发贴: 3649
威望: 11
浮云: 202
在线等级:
注册时间: 2005-10-18
最后登陆: 2024-07-05

5come5帮你背单词 [ ankle /'æŋkl/ n. 踝,踝节部 ]


Quote:
引用第5楼neveredge于2006-11-10 23:14发表的:
源码在哪呢?(我是初学者,很多不懂)
我在php.ini中设置了"extension=php_mysqli.dll"应该是加载了mysqli类的,不明白......


这个不是配置的问题。
是少了一个文件。
你再找找看.............
顶端 Posted: 2006-11-10 23:32 | [6 楼]
X



社区建设奖
性别: 帅哥 状态: 该用户目前不在线
头衔: 这一刻,我......
等级: 管理员
家族: 活动仔
发贴: 22586
威望: 10
浮云: 142
在线等级:
注册时间: 2005-10-10
最后登陆: 2024-04-15

5come5帮你背单词 [ when /wen/ ad. 什么时候,在…的时候;conj.当…时,其时,然后,可是,然而;pron. 什么时候 ]


建议蝈蝈把全部文件打包上传,当然还有建数据库的PHP文件~

1:看变量名有没有错的
2:多利用echo 和//来自己找错误~
顶端 Posted: 2006-11-11 15:25 | [7 楼]
马甲之王





性别: 帅哥 状态: 该用户目前不在线
等级: 初出茅庐
发贴: 65
威望: 0
浮云: 1105
在线等级:
注册时间: 2006-11-08
最后登陆: 2008-05-06

5come5帮你背单词 [ drive /draiv/ vt. 驾驶,用车送,驱赶,驱动,迫使,逼迫;vi. 驾驶,开车;n. 驾驶,驱动(器) ]


即使是书上的原码也不一定就完全正确
$result = $db->query($query);
这句明显有问题
顶端 Posted: 2006-11-11 17:39 | [8 楼]
马甲之王





性别: 帅哥 状态: 该用户目前不在线
等级: 初出茅庐
发贴: 65
威望: 0
浮云: 1105
在线等级:
注册时间: 2006-11-08
最后登陆: 2008-05-06

5come5帮你背单词 [ collective /kə'lektiv/ a. 集体的,共同的;n. 集体,全体人员 ]


Quote:
引用第3楼sunbin于2006-11-10 16:53发表的:
光是这两段代码肯定是运行不起的。
请把定义mysqli类的源码发上来。

results.php用的是自定义的数据库查询函数,函数被定义在mysqli类中。
假设定义mysqli类的文件名为mysql.php(我假设的),还应该在results.php加入
.......

mysqli是 php5的预定义类
顶端 Posted: 2006-11-11 17:42 | [9 楼]
neveredge





性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 371
威望: 0
浮云: 1138
在线等级:
注册时间: 2006-11-10
最后登陆: 2009-06-05

5come5帮你背单词 [ sixty /'siksti/ num. 六十 ]


所有的文件献上
附件: s.rar (2 K) 下载次数:0

顶端 Posted: 2006-11-13 13:27 | [10 楼]
neveredge





性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 371
威望: 0
浮云: 1138
在线等级:
注册时间: 2006-11-10
最后登陆: 2009-06-05

5come5帮你背单词 [ suicide /'sjuisaid/ n. 自杀(事件),自杀者 ]


Quote:
引用第8楼马甲之王于2006-11-11 17:39发表的:
即使是书上的原码也不一定就完全正确
$result = $db->query($query);
这句明显有问题

$db->query($query) 返回的是一个数据库查询结果集 相当于mysql_query函数,应该没错.
关键在那个提示上:Fatal error: Trying to clone an uncloneable object of class mysqli in D:\RUIOA\webroot\results.php on line 26
为什么预定义的类会无法复制呢???
顶端 Posted: 2006-11-13 13:34 | [11 楼]
neveredge





性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 371
威望: 0
浮云: 1138
在线等级:
注册时间: 2006-11-10
最后登陆: 2009-06-05

5come5帮你背单词 [ distil // v. 蒸馏,用蒸馏法提取 ]


各位高人~
顶端 Posted: 2006-11-13 22:37 | [12 楼]
图片中的数字




性别: 保密 状态: 该用户目前不在线
等级: *
发贴: *
威望: *
浮云: *
在线等级:
注册时间: *
最后登陆: *

5come5帮你背单词 [ quicken /'kwikən/ vt. 加快,加速;vi. 变快,变活跃 ]


Quote:
引用第11楼neveredge于2006-11-13 13:34发表的:

$db->query($query) 返回的是一个数据库查询结果集 相当于mysql_query函数,应该没错.
关键在那个提示上:Fatal error: Trying to clone an uncloneable object of class mysqli in D:RUIOAwebrootresults.php on line 26
为什么预定义的类会无法复制呢???

我推测是这样的
本来$reslut得到的是一个数据库查询结果,
但是你使用 $reslut-> 又把它当作一个对象了(但是它不是对象....)
当然不能clone了
顶端 Posted: 2006-11-14 12:26 | 美国 [13 楼]
neveredge





性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
发贴: 371
威望: 0
浮云: 1138
在线等级:
注册时间: 2006-11-10
最后登陆: 2009-06-05

5come5帮你背单词 [ hull /hΛl/ n. 船身,船体,(果、实等的)外壳;vt. 去(谷物、豆等的)壳 ]


Quote:
引用第13楼图片中的数字于2006-11-14 12:26发表的:

我推测是这样的
本来$reslut得到的是一个数据库查询结果,
但是你使用 $reslut-> 又把它当作一个对象了(但是它不是对象....)
当然不能clone了

我觉得不是的,出错是在26行,内容如下:$db = new mysqli('localhost', 'bookorama', 'bookorama123', 'books');
提示的是不能clone"mysqli"这个类,我想和结果集无关.
顶端 Posted: 2006-11-14 12:43 | [14 楼]
我来我网·5come5 Forum » 程序员之家

Total 0.008715(s) query 5, Time now is:11-24 01:02, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号