(孙仲岳的教程) 连接PHP的代码那错了?

来源:百度知道 编辑:UC知道 时间:2024/06/14 21:41:35
<?php
$mysql_server_name='localhost'; //改成自己的mysql数据库服务器
$mysql_username='root'; //改成自己的mysql数据库用户名
$mysql_password='198791'; //改成自己的mysql数据库密码
$mysql_database='mydb'; //改成自己的mysql数据库名

$conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password);
$sql='insert into book (name,pwd) values ("000","000");';

$result=mysql_db_query($mysql_database,$sql,$conn);
$row=mysql_fetch_row($result);
mysql_close($conn);
echo "Hello!操作成功!";

?> 这是按教程上面写的,那错了出现错误
mysql_fetch_row(): supplied argument is not a valid MySQL result resource in D:\PHP\AppServ\www\mysql2.php on line 15
也就是这一行 $row=mysql_fetch_row($result);

大家最好给解释下每一行代码的意思,谢谢

是的,你的代码会错,mysql_fetch_row是获取SQL查询的结果,你的SQL是一个insert语句,没有任何结果。

各个语句的解释我昨天晚上回复你的另外一个帖子(http://zhidao.baidu.com/question/53545836.html)有说明,你现在对哪个语句不理解呢?

补充:
$row=mysql_fetch_row($result);
的功能是把SQL语句查询的结果的下一行获取到数组$row中,并一定指针到下一行,你现在这个insert语句不能使用这个函数,我举例如下(显示book表的前100条记录):

$sql='select * from book';
$res=mysql_query($sql);
if ($res){
while ($row=mysql_fetch_array($res)) echo "$row[book] $row[pwd]<br>\n";
mysql_free_result($res);
}else echo "执行 $sql 错误:".mysql_error();

不一定第一天就把每个语句弄懂,反正就按照这个模板编写程序,不能再问,过两个月自然就懂了。如果要一句一句搞懂,我担心几年都学不会PHP,写不出PHP程序。

注意,select返回结果集,而insert只返回执行语句的状态,
$sql="select * from table";
$result=mysql_query($sql,$conn);//这里返回一个结果集,可以用mysql_fetch_row 或mysql_fetch_array拾取并转换为数组.

$sql="insert into table(col)value