php的mysql_fetch_array函数到底怎么用啊?
这是我的代码,我这样写到底哪错啦,不能输出,提示代码错误,请高手给指教下,数据库是连接成功的,可以正常的掺入和修改,就是查询输出时出错<?php$dbhost='loca...
这是我的代码,我这样写到底哪错啦,不能输出,提示代码错误,请高手给指教下,数据库是连接成功的,可以正常的掺入和修改,就是查询输出时出错
<?php
$dbhost = 'localhost'; //数据库主机地址
$dbuser = 'admin'; //mysql用户名
$dbpass = 'admin'; //mysql密码
$dbname = 'admin'; //mysql库名
//连接数据库
$GLOBALS["conn"] = mysql_connect($dbhost,$dbuser,$dbpass);
//判断数据库是否成功连接,如连接成功则打开数据库
if(!$GLOBALS) echo "连接数据库失败!";
else $db=mysql_select_db($dbname,$GLOBALS["conn"]);//打开数据库
mysql_query("SET NAMES 'gbk'");//解决汉字
$result = mysql_query("ELECT username,yhzfmm FROM xly_yhzl WHERE username = 'zwj0936' AND yhzfmm = '870802'");
while($row = mysql_fetch_array($result)) {
echo $row["username"];
echo $row["yhzfmm"];
}
mysql_free_result($result);
?>
请高手给详细的指出哪里错啦并给出正确的代码,先谢谢啦 展开
<?php
$dbhost = 'localhost'; //数据库主机地址
$dbuser = 'admin'; //mysql用户名
$dbpass = 'admin'; //mysql密码
$dbname = 'admin'; //mysql库名
//连接数据库
$GLOBALS["conn"] = mysql_connect($dbhost,$dbuser,$dbpass);
//判断数据库是否成功连接,如连接成功则打开数据库
if(!$GLOBALS) echo "连接数据库失败!";
else $db=mysql_select_db($dbname,$GLOBALS["conn"]);//打开数据库
mysql_query("SET NAMES 'gbk'");//解决汉字
$result = mysql_query("ELECT username,yhzfmm FROM xly_yhzl WHERE username = 'zwj0936' AND yhzfmm = '870802'");
while($row = mysql_fetch_array($result)) {
echo $row["username"];
echo $row["yhzfmm"];
}
mysql_free_result($result);
?>
请高手给详细的指出哪里错啦并给出正确的代码,先谢谢啦 展开
5个回答
展开全部
$result = mysql_query("ELECT username,yhzfmm FROM xly_yhzl WHERE username = 'zwj0936' AND yhzfmm = '870802'");
这句中的SQL语句应当是SELECT,不是ELECT
既然用if(!$GLOBALS) echo "连接数据库失败!";判断连接是否失败,就要抑制$GLOBALS["conn"] = mysql_connect($dbhost,$dbuser,$dbpass); 的出错,添加@(这个不算错)
改为$GLOBALS["conn"] = @ mysql_connect($dbhost,$dbuser,$dbpass);
别的地方没看出什么错,那个yhzfmm = '870802',如果表设计时是按字符串存储就没错,如果是按数字存储的话要去掉单引号'
这句中的SQL语句应当是SELECT,不是ELECT
既然用if(!$GLOBALS) echo "连接数据库失败!";判断连接是否失败,就要抑制$GLOBALS["conn"] = mysql_connect($dbhost,$dbuser,$dbpass); 的出错,添加@(这个不算错)
改为$GLOBALS["conn"] = @ mysql_connect($dbhost,$dbuser,$dbpass);
别的地方没看出什么错,那个yhzfmm = '870802',如果表设计时是按字符串存储就没错,如果是按数字存储的话要去掉单引号'
展开全部
举个列子给你看吧
//查询多条数据的sql语句
$sql = "SELECT * from Person WHERE Lastname='Adams'";
//通过mysql_query 去查询$sql语句 $con,是链接数据库后的标识
//$result 是一个结果级也就是查询出来的数据
$result = mysql_query($sql,$con);
//因为 上面的查询的$sql 查询出来的结果是多行的结果集。所以我们需要用
//mysql_fetch_array()根据从结果集取得的行生成的数组,如果没有更多行则返回 false。
print_r(mysql_fetch_array($result));
//查询多条数据的sql语句
$sql = "SELECT * from Person WHERE Lastname='Adams'";
//通过mysql_query 去查询$sql语句 $con,是链接数据库后的标识
//$result 是一个结果级也就是查询出来的数据
$result = mysql_query($sql,$con);
//因为 上面的查询的$sql 查询出来的结果是多行的结果集。所以我们需要用
//mysql_fetch_array()根据从结果集取得的行生成的数组,如果没有更多行则返回 false。
print_r(mysql_fetch_array($result));
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//-- ------ #Db config ------ --
$dbhost = 'localhost'; //数据库主机地址
$dbuser = 'admin'; //mysql用户名
$dbpass = 'admin'; //mysql密码
$dbname = 'admin'; //mysql库名
$dbcharset = 'gb2312'; //Charset
//-- ------ #Connection ------ --
$GLOBALS['Connection'] = mysql_connect($dbhost,$dbuser,$dbpass);
if(mysql_error()!=''){
//Error
//$this->getError1('',mysql_error(),'Database error','10005');
exit();
}
mysql_select_db($dbname);
$tmpSTR=' SET NAMES '.$dbcharset;
mysql_query($tmpSTR,$GLOBALS['Connection']);
//-- ------ #Search ------ --
$tmpSQL="SELECT username,yhzfmm FROM xly_yhzl WHERE username = \'zwj0936\' AND yhzfmm = \'870802\'; ";
$tmpResult=mysql_query($tmpSQL);
if(mysql_error()!=''){
//Error
//$this->getError1('',mysql_error(),'Database error','10005');
exit();
}
$tmpDataCollection=array();
$Coun0=0;
while($tmpLine=mysql_fetch_array($tmpResult,MYSQL_ASSOC)){
$tmpDataCollection[$Coun0]=$tmpLine;
$Coun0++;
}
//-- ------ #Print ------ --
print_r($tmpDataCollection);
$dbhost = 'localhost'; //数据库主机地址
$dbuser = 'admin'; //mysql用户名
$dbpass = 'admin'; //mysql密码
$dbname = 'admin'; //mysql库名
$dbcharset = 'gb2312'; //Charset
//-- ------ #Connection ------ --
$GLOBALS['Connection'] = mysql_connect($dbhost,$dbuser,$dbpass);
if(mysql_error()!=''){
//Error
//$this->getError1('',mysql_error(),'Database error','10005');
exit();
}
mysql_select_db($dbname);
$tmpSTR=' SET NAMES '.$dbcharset;
mysql_query($tmpSTR,$GLOBALS['Connection']);
//-- ------ #Search ------ --
$tmpSQL="SELECT username,yhzfmm FROM xly_yhzl WHERE username = \'zwj0936\' AND yhzfmm = \'870802\'; ";
$tmpResult=mysql_query($tmpSQL);
if(mysql_error()!=''){
//Error
//$this->getError1('',mysql_error(),'Database error','10005');
exit();
}
$tmpDataCollection=array();
$Coun0=0;
while($tmpLine=mysql_fetch_array($tmpResult,MYSQL_ASSOC)){
$tmpDataCollection[$Coun0]=$tmpLine;
$Coun0++;
}
//-- ------ #Print ------ --
print_r($tmpDataCollection);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if(!$GLOBALS) {
echo "连接数据库失败!";
} else {
$db=mysql_select_db($dbname,$GLOBALS["conn"]);//打开数据库
..............
}
echo "连接数据库失败!";
} else {
$db=mysql_select_db($dbname,$GLOBALS["conn"]);//打开数据库
..............
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
while($row = mysql_fetch_array($result))
这里用IF来判断吧。。
要用循环的话请使用for
这里用IF来判断吧。。
要用循环的话请使用for
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |