工作正常,結果爲空,但是當我在MySQL的終端或phpMyAdmin的運行它,我得到了我想要的東西。MySQL查詢返回的PHP代碼空,但是當我運行在PHP這個代碼終端
PHP
if ($_GET["action"] == "list") {
//Get records from database
$mainQuery = mysql_query("
SET SQL_BIG_SELECTS=1;
SELECT
ci.id AS item_id,
ar.title, ar.introtext,
flo.value AS logo, fph.value AS phone, fad.value AS address, fur.value AS url, fse.value AS services, fma.value AS map,
ar.id AS joomla_id, ci.hidden_id, ci.type
FROM kd9fb_content ar
RIGHT JOIN calc_settings cs ON ar.catid = cs.joomla_cat
LEFT JOIN kd9fb_fieldsattach_values flo ON flo.articleid = ar.id AND flo.fieldsid = 1
LEFT JOIN kd9fb_fieldsattach_values fph ON fph.articleid = ar.id AND fph.fieldsid = 2
LEFT JOIN kd9fb_fieldsattach_values fad ON fad.articleid = ar.id AND fad.fieldsid = 3
LEFT JOIN kd9fb_fieldsattach_values fur ON fur.articleid = ar.id AND fur.fieldsid = 4
LEFT JOIN kd9fb_fieldsattach_values fse ON fse.articleid = ar.id AND fse.fieldsid = 5
LEFT JOIN kd9fb_fieldsattach_values fma ON fma.articleid = ar.id AND fma.fieldsid = 6
LEFT JOIN calc_item ci ON ci.joomla_id = ar.id
ORDER BY ci.id DESC;
", $con);
while ($row = mysql_fetch_array($mainQuery)) {
$rows[] = $row;
}
//Return result to jTable
$jTableResult = array();
$jTableResult['Result'] = "OK";
$jTableResult['Records'] = $rows;
print json_encode($jTableResult);
}
這將返回NULL:
$row = mysql_fetch_array($mainQuery)
MySQL的鹼是好的,代碼通過此連接基:
$con = mysql_connect($host, $user, $password) or die("DB login failed!");
mysql_select_db($db, $con) or die("select failed");
mysql_query("SET NAMES utf8");
類似的代碼,但與其他查詢工作正常,我測試了它,顯然是在案件請求。順便說一句,我認爲它是完全非最佳的方式,但我不善於SQL和PHP。
那麼,有什麼問題,我哪裏錯了?
使用的mysqli或PDO –
你希望在$行什麼格式陣列的? –
嘗試使用和mysql_fetch_row而不是mysql_fetch_array –