匹配并使用php中的数据库列访问字符串

时间:2014-01-06 19:24:58

标签: php mysql

我是处理php的新手:

我有一个像$string=admin这样的字符串,我想在我的数据库列中查看名为“username”的字符串,包括像guest, admin, abc, def, ...这样的值。然后如果在该列中找到该字符串,则想显示一条消息。 我做了类似的事情:

$query=mysql_query("SELECT * FROM 'table_name' where 'username' like '$string'",$link); 
//where $link is connection to my database
$row = mysql_fetch_row($query);
echo $row;

使用上面的代码时收到以下错误消息:

  

警告:mysql_fetch_row()期望参数1为资源,第22行的C:\ xampp \ htdocs \ abc \ def.php中给出布尔值

我也想做类似的事情:

$query = mysql_query("SELECT username FROM table_name",$link);
if ($query){
    while ($data=mysql_fetch_array($query)){
        echo $data['username'];
    }
}

非常感谢您的指导!

3 个答案:

答案 0 :(得分:0)

这肯定会有效:

$squery="SELECT username FROM tablename WHERE username='$string'";
$sresult=mysql_query($squery);
$qry=mysql_fetch_assoc($sresult); 
echo $qry['username']; //in case if u want to print the result.

答案 1 :(得分:0)

根据php参考:http://us2.php.net/mysql_query这个函数可能只返回FALSE。检查并查看您的$query变量是否返回false,您可能没有该表的权限或正在调用一些有趣的内容。

答案 2 :(得分:0)

此查询解决了该问题,该查询在所需的数据库列中搜索字符串&打印匹配的值!谢谢大家!

$result=mysql_query("SELECT * FROM table_name where username ='".$muser."'", $link);
if($result === FALSE) {
    die(mysql_error());
}
while($row = mysql_fetch_array($result))
{
    echo $row['username'];
}

其中'username'是列名。