将数据库记录存储到数组中

时间:2011-03-20 03:41:26

标签: php mysql arrays

我想创建一个数组,该数组将使用SELECT语句的查询保存从数据库中检索的记录。

要检索的记录有多个字段,如姓氏,名字,mi和另外20个字段。编码这个函数的最佳方法是什么?

好吧我跟随了囚犯在下面给出的内容..下一个问题是如何使用查询搜索这种数组?例如,我想搜索用户名..

4 个答案:

答案 0 :(得分:23)

<?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

答案 1 :(得分:4)

您不应该搜索该数组,而是使用数据库功能 假设您通过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
  }
}

答案 2 :(得分:2)

$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
}
}

答案 3 :(得分:0)

$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');

    }