2014-03-01 261 views
0

我设置我的数据库,并希望显示名字姓氏电子邮件和年龄。它只显示名字。这里是我的代码:从mysql检索数据

<?php 
$host_name = 'localhost'; 
$db_user ='root'; 
$db_pass = ''; 
$db_name = 'mydb'; 
/* Connect to MySQL */ 
$con = mysql_connect("$host_name","$db_user","$db_pass") or die ("Couldn't connect!"); 
$db = mysql_select_db("$db_name") or die ("Couldn't connect to database!"); 

$query = mysql_query("SELECT * FROM users"); 


/*Fetch the results/convert into an array */ 
while($rows = mysql_fetch_array($query)) 
      { 
     $rows = $rows['first_name']; 
     $last_name = $rows['last_name']; 


       echo 
      $rows.'</br>'.$last_name; 
      } 
?> 

这是错误我得到

警告:非法串偏移 '姓氏' 在C:\ XAMPP \ htdocs中\ global.php上线17 埃里克 è 警告:非法串抵消C“姓氏”:\ XAMPP \ htdocs中\ global.php上线17 斯泰西 小号

我检查了我的表和各领域存在的什么是错的我至今编码。我没有添加电子邮件或年龄,因为我仍然会出现字符串错误。

+0

如何分配'$行['网络rst_name'];'给'$ rows'以外的变量名? –

+0

请显示你的表格列吗? –

+0

$ rows = $ rows ['first_name'];这条线是你的问题。当您尝试获取姓氏时,您不再访问数组,而是字符串变量。 – muktupavels

回答

1
while($rows = mysql_fetch_array($query)) 
      { 
     $first_name = $rows['first_name']; 
     $last_name = $rows['last_name']; 



      echo $first_name .'</br>'.$last_name; 
      } 

试试这个。

0

你是第一个名字给同名$rows和抓取

尝试更改名称

$rows = $rows['first_name']; 

$first_name = $rows['first_name']; 

然后

echo $first_name.'</br>'.$last_name; 
+0

好吧,我得到了它的感谢帮助所有人,我把它从$ rows = $ rows改为firstname age等等。当我这样做的时候,它仍然没有工作,因为那是我原来做的,但我必须在编码方面有错误。我的另一个问题是即时通讯尝试使登录脚本在同一页面上显示错误消息。例如,当有人试图登录它会说,请输入用户名和或密码 – user3369387

+0

这可能会帮助你检测输入是否为空。如果你想通过网页提交做到这一点,那么它的PHP –

+0

我道歉,即时通讯新的JavaScript。我将如何设置我的代码以及JavaScript来应用我的错误消息。 – user3369387