2014-04-23 3 views
0

모든 결과 열의 모든 열에 대해 입력 시간순으로 한도 내림차순으로 쿼리하는 페이지를 만듭니다. 행 수를 쿼리 할 때 쿼리가 제대로 작동하지만 데이터를 다시 쿼리 할 때 아무 것도 얻지 못합니다. 나는 "SELECT * FROM comments"에 대한 질의를 시도하기로 결정했으나, 단지 사전에 "SELECT COUNT(*) AS count FROM comments"이 수행되었을 때 여전히 결과가 없습니다. 나는 mysqli_error()를 사용해 보았지만, 어떤 정보도주지 않았다.mysqli_query() 전체 테이블에 대해 빈 결과를 반환합니다.

mysqli_query()의 결과가 false가 아니므로 쿼리가 실패하지 않는 것 같고 phpMyAdmin에서 쿼리 할 때 쿼리가 작동합니다.

//open databases 
require_once($root . "databases/data.php"); 

//get number of suggestions in comments table 
$cquery = mysqli_query($cbase, "SELECT COUNT(*) AS count FROM comments"); //this works 
$c = mysqli_fetch_array($cquery); 
$count = $c["count"]; 

//get all suggestions 
//this query fails 
$queryText = "SELECT * FROM comments ORDER BY time DESC LIMIT " . (($page - 1) * $pageLimit) . ", " . $pageLimit; 
$query = mysqli_query($cbase, $queryText); 

//validate query 
if($query === false) 
{ 
    $failed = true; 
} 

//get all comments from query 
while(!$failed && $array = mysqli_fetch_array($result)) 
+1

그래서'$ page'와'$ pageLimit'의 값은 무엇입니까? –

+0

'$ queryText'를'echo'하고 우리에게 보여주세요. @MarkBaker는 아마도'$ page'와'$ pageLimit'이 엉망이되어 버린 것에 대해 아마 맞을 것입니다. – Kryten

+0

사과드립니다. '$ page '는 처음에는 1이어야하고'$ pageLimit'는 항상 40이어야합니다.'$ queryText'는'SELECT * FROM comments ORDER BY time DESC LIMIT 0, 40 "' –

답변

0

아래에있는 내 코드의 작은 조각 당신은 단지 잘못된 변수 때를 사용하고, 또한이 같은 시도 할 수 있습니다 라인 3

$c = mysqli_fetch_assoc($cquery); 

$c = mysqli_fetch_array($cquery, MYSQLI_ASSOC); 
0

이것을 시도하십시오 while 루프에서 쿼리 결과를 읽습니다. mysqli_fetch_array($result) 쿼리 결과를 $ query에 저장하는 동안 mysqli_fetch_array($query)

관련 문제