Ne pouvait pas extraire Mysqli_result
J'ai eu cette erreur
Warning: mysqli_fetch_array() [function.mysqli-fetch-tableau]: impossible de récupérer mysqli_result dans /home/fights7/public_html/include/load_more_home_posts.php on line 12
Et voudrais savoir ce que j'ai fait de mal avec le code ci-dessous?
$articles_data = mysqli_query($mysqli,"SELECT * FROM streamdata WHERE streamitem_id < '$lastID' ORDER BY streamitem_id DESC LIMIT 10") or die(mysql_error());
while($articles_info = mysqli_fetch_array($articles_data)) {
$json = array();
$json['streamitem_id'] = $articles_info['streamitem_id'];
$json['streamitem_content'] = $articles_info['streamitem_content'];
$json['streamitem_timestamp'] = $articles_info['streamitem_timestamp'];
mysqli_free_result($articles_data);
Espérons que
Yep avec msqli_real_escape_string($last_id). Pourquoi les gens sont tellement obsédés par injection SQL?
Parce que nous voyons des tas et des tas de vraiment terrible du code PHP, et de rencontrer des tas et des tas de nouveaux utilisateurs qui n'ont même jamais entendu parler de l'injection SQL 🙁 Mieux vaut prévenir que guérir, donc nous toujours point si nous n'avons pas explicitement de voir s'échapper et de filtrage dans la posté code.
mon estimation est que environ 90%+ de php affiches ici n'ont aucune idée de l'injection de problèmes.
C'est très bien @MichaelBerkowski, je vais peut-être commencer à faire la même chose autour du site pour aider les autres.
$lastID
est correctement filtrée/sanitized/a échappé. Sinon, vous êtes vulnérable à les attaques par injection SQLYep avec msqli_real_escape_string($last_id). Pourquoi les gens sont tellement obsédés par injection SQL?
Parce que nous voyons des tas et des tas de vraiment terrible du code PHP, et de rencontrer des tas et des tas de nouveaux utilisateurs qui n'ont même jamais entendu parler de l'injection SQL 🙁 Mieux vaut prévenir que guérir, donc nous toujours point si nous n'avons pas explicitement de voir s'échapper et de filtrage dans la posté code.
mon estimation est que environ 90%+ de php affiches ici n'ont aucune idée de l'injection de problèmes.
C'est très bien @MichaelBerkowski, je vais peut-être commencer à faire la même chose autour du site pour aider les autres.
OriginalL'auteur dave | 2012-09-02
Vous devez vous connecter pour publier un commentaire.
Tout de suite, il semble que vous appelez
mysqli_free_result()
à l'intérieur de votre boucle de fetch, donc après la première itération de boucle, votre ressource de résultat a été fermé et libéré, et plus les résultats seront disponibles.Je note que vous appelez
mysqli_fetch_array()
sans préciserMYSQLI_ASSOC
, et de sorte que vous obtenez à la fois numérique et associatif clés. Si vous utilisez tout votre JSON, vous n'avez pas besoin de faire toutes ces missions si vous utilisezMYSQLI_ASSOC
oumysqli_fetch_assoc()
:OriginalL'auteur Michael Berkowski