2010-10-02 10 views
0

J'ai eu toutes les réponses à cette erreur, mais quelque chose d'étrange se produit dans mon cas. je:Sur une page fonctionne sur un autre throws: Appel à une fonction membre fetch_assoc() sur un non-objet

$result = $mysqli->query("SELECT * FROM table"); 
while ($row = $result->fetch_assoc()) 
{ 
    // data echoed here 
} 

J'ai 3 comportements différents de ce:

1.Dans une page, cela fonctionne parfaitement 2.Dans une autre page, il jette le: Appel à une fonction membre fetch_assoc() sur un non-objet 3.Sur une page de test vide que je viens de définir, où aucun autre code n'est (excepté inclure $ mysqli = new mysqli ('hôte', 'utilisateur', 'passe', 'db') ; cela fonctionne, mais me jette cela:

Avis: Essayer d'obtenir la propriété de non-objet

+0

Utilisez 'var_dump' pour voir ce que' query' renvoie dans chaque cas. –

+0

Il me lance un tas de choses quand j'utilise var_dump - peut le poster si ça aide, car la seule partie que je comprends est la suivante: "Commandes désynchronisées, vous ne pouvez pas exécuter cette commande maintenant", mais ne le faites pas savoir pourquoi – Ramon

+1

2: la requête a échoué. utilisez 'echo $ mysqli-> error;' pour voir l'erreur. 3: Cela n'a rien à voir avec ce code, il est probablement dû à une vérification '$ mysql-> connection_error'. – Lekensteyn

Répondre

0

Merci les gars. Merci spécial à Lekensteyn - ceci a résolu mon problème.

Ce que j'ai fait est simplement de rouvrir la connexion avant la nouvelle requête, et maintenant cela fonctionne.