2009-08-04 40 views
5

Có thể xuất kết quả truy vấn SQL trong một chuỗi hoặc biến không? (Tôi là xấu trong php và mysql) Hãy nói rằng tôi có db "đại lý" với các cột - agent_id, agent_fname, agent_lname, agent_dept.Kết quả truy vấn SQL trong một chuỗi (hoặc biến)

Sử dụng truy vấn này:

$sql = SELECT a.`agent_fname` FROM agents a WHERE a.`agent_dept` = 'FCA' 

Tôi muốn có được một chuỗi hoặc một biến, vì vậy tôi có thể sử dụng nó trong bất kỳ vị trí của tập tin php của tôi (ví dụ: $ my_variable mà kết quả đầu ra là kết quả của truy vấn của tôi). Có thể không? Nếu có - làm thế nào?

Cảm ơn bạn!

* Tôi có nhiều hàng.

Trả lời

3
$result = mysql_query($sql); 

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { 
    printf("Name: %s", $row['agent_fname'],); 
} 
5

Tôi giả sử bạn đang làm một cái gì đó như:

$result = mysqli_query ($link, $sql). 

Các 'i' trong mysqli là cho 'cải thiện' mà là những gì bạn nên sử dụng những ngày này.

Kết quả $ này không phải là kết quả của bạn. Bạn phải gọi:

while ($row = mysqli_fetch_assoc($result)) { 
    print_r ($row); 
} 

Mã trên cung cấp cho bạn hàng $, là đầu ra thực tế của bạn, dưới dạng mảng.

0

Nếu bạn muốn chuyển xung quanh một biến duy nhất thể hiện hồ sơ của bạn. Bạn có thể tạo mảng hai chiều. như:

$records = array(); 
$mysqli_result = mysqli_query ($link, $sql); 

while ($row = mysqli_fetch_assoc($result)) { 
    $records[] = $row; 
} 

Điều này sẽ cung cấp cho bạn một biến mảng, $ hồ sơ, tất cả kết quả của bạn. Đó là dễ dàng để vượt qua xung quanh. (có thể là một arg đối với một hàm khác.) HOWEVER, đây là một mẫu có thể ăn nhiều bộ nhớ.

Tốt hơn là nên vượt qua $ mysqli_result.

Các vấn đề liên quan