2011-01-15 39 views
5

Tôi muốn có thể lưu trữ (không echo) một số dữ liệu đã được chọn từ cơ sở dữ liệu mysql trong một mảng php. Cho đến nay, tôi chỉ có thể lặp lại thông tin, tôi chỉ muốn có thể lưu trữ nó trong một mảng để sử dụng sau này. Đây là mã của tôi:Cách lưu trữ hàng/cột dữ liệu mysql trong mảng

$query = "SELECT interests FROM signup WHERE username = '$username'"; 
$result = mysql_query($query) or die ("no query"); 
while($row = mysql_fetch_array($result)) 
{ 
echo $row['interests']; 
echo "<br />"; 
} 

Trả lời

19

Bạn có thể sử dụng

$query = "SELECT interests FROM signup WHERE username = '".mysql_real_escape_string($username)."'"; 
$result = mysql_query($query) or die ("no query"); 

$result_array = array(); 
while($row = mysql_fetch_assoc($result)) 
{ 
    $result_array[] = $row; 
} 

này về cơ bản sẽ lưu trữ tất cả các dữ liệu vào mảng $result_array.

Tôi đã sử dụng mysql_fetch_assoc thay vì mysql_fetch_array để các giá trị được ánh xạ tới khóa của chúng.

Tôi cũng đã bao gồm mysql_real_escape_string để bảo vệ.

2

Bạn có thể "cửa hàng" nó bằng cách không truy cập vào nó từ tập hợp kết quả cho đến khi bạn cần đến nó, nhưng nếu bạn thực sự muốn chỉ cần mang nó và đặt nó trong một biến ...

$query = "SELECT interests FROM signup WHERE username = '$username'"; 
$result = mysql_query($query) or die ("no query"); 

$interests = array(); 
while(false !== ($row = mysql_fetch_assoc($result))) { 
    $interests[] = $row; 
} 
Các vấn đề liên quan