echo mysql_num_rows的所有行

时间:2015-07-02 08:29:00

标签: php

我有以下php

  $q=mysql_query("select SMILES from GeoAndEnergies where Weight='".$data."' ") or die(mysql_error());
 $n=mysql_num_rows($q); //not mysql_fetch_row, as that does not return count but an array
 if($n>0)
 {
   $info=mysql_fetch_row($q);
    echo $info[0];
  }
  else {
   echo "molecule not find";
  }

我想回复的不只是$ info [0],而是$ info [0] +"<" + $ info [1] +"<" .... + $ info [n],什么是正确的语法?

由于

3 个答案:

答案 0 :(得分:1)

嗯,你只是打印一个,所以把它放在一个循环中。我建议:

$q=mysql_query("select SMILES from GeoAndEnergies where Weight='".$data."' ") or die(mysql_error());
$n=mysql_num_rows($q); //not mysql_fetch_row, as that does not return count but an array
$str = '';
if($n>0)
{
    while ($info=mysql_fetch_assoc($q)) {
        $str .= $info['SMILES'] .'<';
    }
echo substr($str, 0, -1);
} else {
    echo "molecule not found";
}

答案 1 :(得分:1)

使用while循环来获取所有行

$q=mysql_query("select SMILES from GeoAndEnergies where Weight='".$data."' ") or die(mysql_error());
 $n=mysql_num_rows($q); 

 if($n>0)
 {
   $val='';
   while($info=mysql_fetch_row($q))
    {
      if($val!='')
          $val.=' < ';
      $val.= $info[0];
    }
 }
  else {
   $val= "molecule not find";
  }
 echo $val;

答案 2 :(得分:0)

您的问题解决方案如下 使用echo&#39;&#39 ;; print_r($ info); die; 或者使用for循环,您将获得所需的所有数据。