Sheikh Rahat Ali
Sheikh Rahat Ali

Reputation: 1333

How can i retrieve all the records from a table in SugarCRM?

I am using Sugar Pro 6.1 and want to know that how can i retrieve all the products with their ids from the products table. I am trying with the following code

$sql = "SELECT id, name FROM products order by name"; 
$result = $GLOBALS["db"]->query($sql);
$products = $GLOBALS["db"]->fetchByAssoc($result);

but it always returns only the first record.

Is it possible to grab all the products with their ids to display them in a html dropdown, i want to display that drop down in a javascript file thats why i am using the ajax call and in a seperate php file i am using the above code that returns the ouput to the ajax call.

Any help will be appreciated!

Upvotes: 5

Views: 12572

Answers (3)

Amitesh Bharti
Amitesh Bharti

Reputation: 15755

Even though i agree with answer posted by Pelish8. But This is also the another way to fetch data form database

global $db;
$sql   =    "SELECT id, name FROM products WHERE deleted=0 order by name";
$result    =    $db->query($sql);
while($product    =    $db->fetchByAssoc($result)){
    $products[] = $product;
}

Upvotes: 2

Pelish8
Pelish8

Reputation: 129

You need to exclude products that are deleted.

$sql = "SELECT id, name FROM products WHERE deleted=0 order by name";
$result = $GLOBALS["db"]->query($sql);
while ( $product = $GLOBALS["db"]->fetchByAssoc($result) ) {
     $products[] = $product;
}

Upvotes: 6

jmertic
jmertic

Reputation: 2208

fetchByAssoc() only grabs one record at a time. Instead, you need to iterate thru calling fetchByAssoc() like this...

$sql = "SELECT id, name FROM products order by name"; 
$result = $GLOBALS["db"]->query($sql);
while ( $product = $GLOBALS["db"]->fetchByAssoc($result) ) {
     $products[] = $product;
}

Upvotes: 8

Related Questions