2
J'essaie d'utiliser la fonction IFNULL()
pour empêcher le résultat de la requête d'être nul, car les valeurs nulles provoquent des erreurs lorsque les résultats sont convertis en tableau JSON.Traitement de la valeur nulle et JSON
$sql = mysql_query("select IFNULL(status,'nothing'),
foodname from disease_food,
food where disease_food.Disease_ID=$d1 or disease_food.Disease_ID=$d2 and
Food_ID=$res1 and disease_food.Food_ID=food.ID");
while($row=mysql_fetch_assoc($sql)) {
$output[] = $row;
}
$data = json_encode($output);
print($data);
mysql_close();
Les erreurs: (lorsque le résultat est nul)
Undefined variable: output
Vous devez utiliser les commandes préparées ces jours-ci, ce genre de requête est dangereuse et archaïque: http://php.net/manual/en/pdo.prepared-statements.php – freshnode
Essayez '$ sql = mysql_query ("sélectionnez IFNULL (status, 'nothing'), nom de la nourriture de disease_food, aliment où disease_food.Disease_ID = $ d1 ou disease_food.Disease_ID = $ d2 et Food_ID = $ res1 et disease_food.Food_ID = food.ID") OU meurs (mysql_error()); 'et dites-moi quelle erreur (le cas échéant, vous obtenez) – freshnode
Que diriez-vous de localiser et corriger cette erreur en premier? –