>백엔드 개발 >PHP 튜토리얼 > php一个基础有关问题 想请问上大家

php一个基础有关问题 想请问上大家

WBOY
WBOY원래의
2016-06-13 13:15:00849검색

php一个基础问题 想请教下大家。

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
$conn=mysql_connect("localhost","root","123456");

if(!$conn){
  die('could not connect:'.mysql_error());
}
else{
  echo '链接正常<br>';
}


mysql_select_db("zuitu_db",$conn);
$sql="select * from category order by id desc"; // $sql="select * from 'category'";这样写有错吗?
$res=mysql_query($sql);

$i=1;
$strTemp='';
/*
  下面这个while循环,为何读不出数据?
*/
while($row=mysql_fetch_array($res)){
  if($i==1)
  {
      $strTemp=$row["name"];
  }
  else
  {
      $strTemp+='<br>'.$row["name"];
  }
  // ($i==1)?$strTemp=$row["name"]:strTemp+='<br>'.$row["name"]; 这样写有误吗?
  $i+=1;
}
echo $strTemp;
//以上内容 请大家帮忙指正,多谢!



------解决方案--------------------
strTemp+='
'.$row["name"];
变量必须加 $, 你这样写会被认为是语法错误,因为strTemp只能被理解为常量,而常量只能通过define()函数来赋值。
另外PHP的字符串连接符不是 + ,是 . 
$strTemp .= '
'.$row["name"];

题外话,建议你在 每个mysql_query()后面加一个判断,如果数据库查询有错,也能及时找到根源
------解决方案--------------------
$sql="select * from 'category'";这样写有错吗?
$sql="select * from `category`";

($i==1)?$strTemp=$row["name"]:strTemp+='
'.$row["name"]; //这样写有误吗?
($i==1)?$strTemp=$row["name"]:$strTemp.='
'.$row["name"];
$strTemp = ($i==1)?$row["name"]:$strTemp.'
'.$row["name"];
------解决方案--------------------
*
下面这个while循环,为何读不出数据?
*/
while($row=mysql_fetch_array($res)){
if($i==1)
{
$strTemp=$row["name"];
}
else
{
$strTemp.='
'.$row["name"];
}
------解决方案--------------------
同意三楼的方法, $strTemp+='
'.$row["name"]; 这句用了+号,php会把$strTemp作为int型数据进行处理,而不是字符串
------解决方案--------------------
探讨
$sql="select * from 'category'";这样写有错吗?
$sql="select * from `category`";

($i==1)?$strTemp=$row["name"]:strTemp+='
'.$row["name"]; //这样写有误吗?
($i==1)?$strTemp=$row["name"]:$strTemp.='
'.$……
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.