2011-03-20 75 views
8

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

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

好吧我已经跟着囚犯在下面给出了..接下来的问题是我如何通过这种使用查询的数组搜索?例如,我要搜索用户名..

+0

运行查询,然后使用:mysql_fetch_array() – 2011-03-20 03:44:43

回答

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

。怎么做我通过使用查询这种阵列的搜索?例如,我想搜索一个用户名.. – zerey 2011-03-20 08:03:22

+0

感谢您的答案。它帮助了我很多。解决了我的问题。 – 2018-01-15 19:53:21

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

你不应该通过数组搜索,但使用的数据库功能这
假设你传递的用户名通过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 
    } 
} 
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'); 

    }