Связать 2 таблицы с Flexigrid - PullRequest
1 голос
/ 18 июня 2011

Эй, ребята, у меня возникла небольшая проблема здесь. У меня есть 2 таблицы, которые я хочу связать, чтобы получить имя для поискового идентификатора, который очень прост, но делать это с flexigrid довольно сложно, так как вы должны построить свой запрос. Это код, который я сейчас использую, но вы получите вывод тысячи записей, который должен быть только 3.

    //Setup sort and search SQL using posted data.
$sortSql = "ORDER BY $sortname $sortorder";
//$searchSql = ($qtype != '' && $query != '') ? "WHERE $qtype = '$query'" : 'WHERE tbl_p2e_place.CityID = tbl_lu_city.CityID';
$searchSql = ($qtype != '' && $query != '') ? "WHERE $qtype = '$query'" : '';

//Get total count of records
$sql = "SELECT COUNT(*) FROM tbl_p2e_place $searchSql";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
$total = $row[0];

//Setup paging SQL
$pageStart = ($page -1)* $rp;
$limitSql = "LIMIT $pageStart, $rp";


//return JSON data
$data = array();
$data['page'] = $page;
$data['total'] = $total;
$data['rows'] = array();
$sql = "SELECT listingID, listingContractNumber, listingName, CityName 
        FROM tbl_p2e_place, tbl_lu_city
        $searchSql
        $sortSql
        $limitSql";
$results = mysql_query($sql);
while($row = mysql_fetch_assoc($results))
{
    $data['rows'][] = array(
    'id' => $row['listingID'],
    'cell' => array($row['listingID'], $row['listingContractNumber'],$row['listingName'], $row['CityName'])
    );
}

echo json_encode($data);

Видите, когда я вставляю WHERE tbl_p2e_place.CityID = tbl_lu_city.CityID в любое из самых логичных мест, оно все равно делает то же самое. Есть ли другой способ сделать это? Даже если мне придется использовать jqgrid или любую другую аналогичную технологию?

С уважением

...