如何从基于用户名的表中选择所有表

问题描述:

我想问一下如何根据用户名从表中选择所有表?我的意思是例如我的用户1插入他/她的数据并发送到本地主机,并在状态页面将只显示他们自己的数据。以下是我的状态页面的PHP。如何从基于用户名的表中选择所有表

<?php 
require_once('dbConnect.php'); 


//Creating sql query 
$sql = "SELECT * FROM Table"; 

//getting result 
$r = mysqli_query($con,$sql); 

//creating a blank array 
$result = array(); 

//looping through all the records fetched 
while($row = mysqli_fetch_array($r)){ 

//Pushing name and id in the blank array created 
array_push($result,array(
"id"=>$row['id'], 
"username"=>$row['username'], 
"name"=>$row['name'] 

)); 
} 

//Displaying the array in json format 
echo json_encode(array('result'=>$result)); 

mysqli_close($con); 

?> 
+0

使用'where'上查询子句。你应该参数化查询。 – chris85

+0

个人用户如何在状态页面上移动?你应该设置一些参数来检测哪个用户进入状态页面?如果你设置了任何参数,那么使用'where'子句 –

+0

插入页面有查看状态按钮,用户点击它,它将显示由它们插入的数据,但是我现在显示所有由不同用户插入的数据。 –

"SELECT * FROM Table WHERE username = 'john'" 

这是假设你的表实际上是一个名为“表”你有它上面。否则,用实际的表名替换它。

如果你有一个用户名变量做到这一点:

"SELECT * FROM Table WHERE username = '" . $username . "'"; 
+0

$ username要在这行之前声明“SELECT * FROM Table WHERE username ='”。 $用户名。 “'”;? –

+0

是的,$ username在此之前必须声明。 – Difster

+0

$ username = $ _POST ['username'];宣布这个? –

你可以像查询中使用WHERE条款。

"SELECT * FROM Table WHERE username = 'lun L'" 

但是,这不是一个很好的方式来获取用户名数据。您应该选择ID基础上的用户,并且ID应该是唯一的。因为有这么多用户可能具有相同的名称。

"SELECT * FROM Table WHERE youUniqueColName = '$uniqueVal'" 

如果唯一的列是id然后用id='$id'

+0

$ uniqueVal需要申报第一个礼仪吗? –

+0

是的,最好使用查询字符串进行设置。 –

+0

意思是什么,对不起,我不太清楚SQL查询 –

SELECT * FROM tablename WHERE username = 'username' 

使用这个,如果你想有一个固定的SQL查询您的变量,或使用;

SELECT * FROM tablename WHERE username = '$username' 

,如果你有,询问用户名显示特定用户名的输入..