获取php中选定的所有cloumn行

获取php中选定的所有cloumn行,php,Php,我的表有3个字段:说唱歌手姓名、音乐路径、音乐名称 现在在这个函数中检查名称是否存在,我想在else语句中 我的意思是,如果例如row_count==5,则取该cloumns的所有行 public function TakeAll($name){ $sql = 'SELECT * from Rap WHERE RapperName =:name'; // find all column's with that name and take all column's with

我的表有3个字段:说唱歌手姓名、音乐路径、音乐名称

现在在这个函数中检查名称是否存在,我想在else语句中 我的意思是,如果例如row_count==5,则取该cloumns的所有行

     public function TakeAll($name){

  $sql = 'SELECT * from Rap WHERE RapperName =:name';

  // find all column's with that name and take all column's with rows


  }
使用查询

$sql = 'SELECT * from Rap WHERE RaperName =:name';

看起来您正在使用一些PHP框架。 尝试使用您的框架语法使用以下PHP代码,这可能会帮助您了解到底需要做什么

public function checkRaperExist($name){

  $sql = mysql_query("select * from Rap where RaperName = '".$name."'");

  $row_count = mysql_num_rows($sql);

    if($sql){

        if ($row_count < 0){
            return false;

        } else {
            $data = array();
            while($row = mysql_fetch_assoc($sql)){
                $data[] = $row;
            }            
            print_r($data); 
        }
    } else {

        return false;
    }
}
公共函数checkRaperExist($name){
$sql=mysql_查询(“从Rap中选择*,其中RaperName=”“$name.”);
$row\u count=mysql\u num\u行($sql);
如果($sql){
如果($row\u count<0){
返回false;
}否则{
$data=array();
while($row=mysql\u fetch\u assoc($sql)){
$data[]=$row;
}            
打印(数据);
}
}否则{
返回false;
}
}
我找到了我的答案:

 public function TakeAll($name){


  $sql ="SELECT * from Rap WHERE RapperName={$name}";
  $result = mysql_fetch_all($conn, $sql);
    return $result;

  }

SELECT COUNT(*)
将始终只返回一行(除非您使用GROUP BY或有语法错误)。一行不包含所需的数据,而是包含行数。如果确实需要数据,则必须
选择*
。(另外:您可能应该重命名列、变量和函数,因为“Rapper”与“Rapper”完全不同。)@user7415865不要频繁更改您的问题,这会使答案变得无关紧要。@Rapper为什么所有人都来这里告诉我细节?如果你能回答我的问题,那么这个对话对我没有帮助。不要使用不推荐的
mysql
-functions-OP已经使用过(可能)的PDO。另外:您的代码容易受到SQL注入的攻击—OP已经使用了预处理语句。使用您的答案,OP将以两种不同的方式严重降低代码质量。