将数据库记录存储到数组中
Posted
技术标签:
【中文标题】将数据库记录存储到数组中【英文标题】:Storing database records into array 【发布时间】:2011-07-19 00:09:30 【问题描述】:我想创建一个数组来保存使用 SELECT 语句查询从数据库中检索到的记录。
要检索的记录有多个字段,例如姓氏、名字、mi 和 20 多个字段。编写此函数的最佳方法是什么?
好吧,我遵循了囚犯在下面给出的内容。下一个问题是我如何使用查询来搜索这种数组?例如我想搜索用户名..
【问题讨论】:
运行查询然后使用:mysql_fetch_array() 【参考方案1】:<?php
// run query
$query = mysql_query("SELECT * FROM table");
// set array
$array = array();
// look through query
while($row = mysql_fetch_assoc($query))
// add each row returned into an array
$array[] = $row;
// OR just echo the data:
echo $row['username']; // etc
// debug:
print_r($array); // show all array data
echo $array[0]['username']; // print the first rows username
【讨论】:
。如何使用查询搜索这种数组?例如我想搜索用户名.. 感谢您的回答。它对我有很大帮助。解决了我的问题。【参考方案2】:您不应搜索该数组,而应为此使用数据库功能 假设您通过 GET 表单传递用户名:
if (isset($_GET['search']))
$search = mysql_real_escape_string($_GET['search']);
$sql = "SELECT * FROM users WHERE username = '$search'";
$res = mysql_query($sql) or trigger_error(mysql_error().$sql);
$row = mysql_fetch_assoc($res);
if ($row)
print_r($row); //do whatever you want with found info
【讨论】:
【参考方案3】:$mysearch="Your Search Name";
$query = mysql_query("SELECT * FROM table");
$c=0;
// set array
$array = array();
// look through query
while($row = mysql_fetch_assoc($query))
// add each row returned into an array
$array[] = $row;
$c++;
for($i=0;$i=$c;$i++)
if($array[i]['username']==$mysearch)
// name found
【讨论】:
【参考方案4】:$memberId =$_SESSION['TWILLO']['Id'];
$QueryServer=mysql_query("select * from smtp_server where memberId='".$memberId."'");
$data = array();
while($ser=mysql_fetch_assoc($QueryServer))
$data[$ser['Id']] =array('ServerName','ServerPort','Server_limit','email','password','status');
【讨论】:
以上是关于将数据库记录存储到数组中的主要内容,如果未能解决你的问题,请参考以下文章