2010-05-03 5 views
0

J'ai une fonction PHP qui vérifie si les variables sont définies et les ajoute ensuite à ma requête SQL. Cependant, je ne semble pas obtenir de résultats?SQL ne fonctionnera pas? Il n'a pas d'erreur non plus

$where_array = array(); 
    if (array_key_exists("location", $_GET)) { 
     $location = addslashes($_GET['location']); 
     $where_array[] = "`mainID` = '".$location."'"; 
    } 
    if (array_key_exists("gender", $_GET)) { 
     $gender = addslashes($_GET["gender"]); 
     $where_array[] = "`gender` = '".$gender."'"; 
    } 
    if (array_key_exists("hair", $_GET)) { 
     $hair = addslashes($_GET["hair"]); 
     $where_array[] = "`hair` = '".$hair."'"; 
    } 
    if (array_key_exists("area", $_GET)) { 
     $area = addslashes($_GET["area"]); 
     $where_array[] = "`locationID` = '".$area."'"; 
    } 

    $where_expr = ''; 
    if ($where_array) { 
     $where_expr = "WHERE " . implode(" AND ", $where_array); 
    } 

    $sql = "SELECT `postID` FROM `posts` ". $where_expr; 

    $dbi = new db(); 
    $result = $dbi->query($sql); 
    $r = mysql_fetch_row($result); 

J'essaie d'appeler les données après dans une liste comme ceci:

 $dbi = new db(); 
$offset = ($currentpage - 1) * $rowsperpage; 

// get the info from the db 
$sql .= " ORDER BY `time` DESC LIMIT $offset, $rowsperpage"; 
$result = $dbi->query($sql); 
// while there are rows to be fetched... 

     while ($row = mysql_fetch_object($result)){ 
      // echo data 

     echo $row['text']; 


     } // end while 

Tout le monde a des idées pourquoi je ne suis pas en train de récupérer les données?

+0

Vous pouvez rendre cela plus facile en publiant ce que contient '$ sql' avant de l'exécuter. –

+0

Il est déjà là l'instruction $ sql est là et j'ajoute après pagination offset calcs le SORT BY qui est également là –

+0

Il signifie poster le contenu littéral de '$ sql' tel qu'il existe juste avant de faire' $ dbi- > query ($ sql) ' –

Répondre

0
while ($row = mysql_fetch_object($result)){ 
     // echo data 

    echo $row->text; 


    } // end while 

J'ai oublié qu'il ne venait pas d'un tableau!

Questions connexes