J'utilise cette requête MySQL, appelée par MySQL:MySQL REJOIGNEZ: les chaînes ne pas retourner
SELECT tf_posts.*, tf_threads.thread_id FROM tf_threads LEFT JOIN tf_posts ON tf_threads.thread_id=54
Quand j'utilise mysql_fetch_array
je reçois une gamme complète de chaque champ, mais les valeurs réelles pour les champs agissent très étrangement en effet ...
Tous les champs numériques ou de date sont retournés très bien; Je peux les utiliser dans le tableau. Les champs de texte, cependant, sont vides. Le tableau retourné est illustré ci-dessous dans sa forme brute:
Array ( [0] => [id] => [1] => [thread_id] => 820515612 [2] => [poster_id] => [3] => [title] => [4] => [body] => [5] => [date] => [6] => [edit_date] => [7] => [edited] => [8] => [draft] => [9] => [spam] => [10] => 820515612 )
Ignore les index numériques ici - je suis intéressé par ceux nommés. Les champs body
et title
sont des champs de texte (CHAR()
) et ne s'affichent évidemment pas lorsqu'ils devraient l'être.
Qu'ai-je fait de mal ou de manqué ici? Est-ce parce que j'utilise CHAR()
? J'en doute fortement mais je ne suis pas génial avec MySQL.
EDIT:
L'idée de cette requête est pour sélectionner tous les fils d'une table (tf_threads), et prendre le premier message sous ce fil d'une autre table (tf_posts) et en utilisant les messages title
terrain le titre du fil.
Merci,
James
S'il vous plaît voir mes modifications. Merci. – Bojangles
Édité ma réponse. – Thilo
Cela fonctionne très bien - merci beaucoup :-) – Bojangles