[英]Php push user array into users array and loop through users and user data (properties)
我將一堆用戶放入一個數據庫表(名為“users”)中,每個用戶的屬性都存儲在表的列中:id、username、first_name、last_name 等等。
當用戶登錄時,她/他的數據從數據庫中檢索並顯示在一個 HTML 表格中; 為此,我創建了函數(在 functions.php 文件中):
function user_data() {
$users = array();
$func_num_args = func_num_args();
$func_get_args = func_get_args();
if ($func_num_args > 1) {
unset($func_get_args[0]);
$fields = '`' . implode( '`, `', $func_get_args) . '`';
}
$query = "SELECT $fields FROM users";
$result = query($query);
$col = mysqli_fetch_assoc($result);
array_push($users, $col);
print_r($users);
return $users;
}
然后在用戶頁面上:
$user_data = $user_data[0];
echo "<span>Welcome, " . $user_data['first_name'] . " " . $user_data['last_name'] . "!</span>";
數據庫中有 2 個用戶,但 $users 數組只包含一個用戶,如 print_r($users) 所示:
Array
(
[0] => Array
(
[username] => ajax
[first_name] => Razvan
[last_name] => Zamfir
[email] => razvan.zamfir80@gmail.com
[telefon] => 0743127315
[oras] => Bucuresti
[adresa] => Strada Alexandru Ipsilanti nr. 6, bloc 29E, sc. B, et. 3, ap. 83.
)
);
我需要遍歷所有用戶和每個用戶的屬性以顯示一個通用表,該表在每行上顯示用戶的名字、姓氏和“編輯”按鈕。
我究竟做錯了什么?
迭代查詢指定的字段的行,然后使用fetch_assoc獲取每個字段
function user_data() {
$users = array();
$func_num_args = func_num_args();
$func_get_args = func_get_args();
if ($func_num_args > 1) {
unset($func_get_args[0]);
$fields = '`' . implode( '`, `', $func_get_args) . '`';
}
//$result = query($query);
$conn = new mysqli("yourhost","username","pass", "dbname");
$query = "SELECT $fields FROM users";
$result=$conn->query($query);
if ($result->num_rows > 0) {
while ($row =$result->fetch_assoc()) {
array_push($users,$row);
}
/* free result set */
mysqli_free_result($result);
}
print_r($users);
return $users;
}
然后迭代從user_data()
方法返回的數組以提取值。
var $usr = user_data();
foreach ($usr as $arr){
foreach ($arr as $key => $value){
echo $key ." ".$value;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.