Probléme de Jointures en PHP / MySQL

Bonjour,
je suis actuellement sur un projet ou je dois récupérer des données stockées dans une base de données et éditer un fichier txt avec ces données.
J’utilise pour ça une jointures externes sur plusieurs tables, le problème c’est que certains champs que je veux éditer sur le fichier txt ne sont pas remontées puisque les index correspondants de sont pas identiques. Pouvez vous me dire comment je peux contourner ce problème.
Voici le programme que j’ai écris:

// on supprime si le fichier existe deja
$fileSpanGaz = '/tests/spangaz/Spangaz.txt';

if (file_exists($_SERVER['DOCUMENT_ROOT']. $fileSpanGaz)){
    echo 'le fichier <b>'.$_SERVER['DOCUMENT_ROOT']. '\\' . $fileSpanGaz.'</b> existe <br>';
    unlink($_SERVER['DOCUMENT_ROOT']. $fileSpanGaz);
    echo 'le fichier a été supprimé'."<br>";
}

//creation du fichier 

$f=fopen($_SERVER['DOCUMENT_ROOT']. $file,"w+b");
echo 'le fichier à été créé'. "<br>";

$sqlQuery ='SELECT  refBottle, 
                    concentration,
                    expirationDate,
                    connections.lib as connections, 
                    pollutants.lib as pollutant,
                    units.lib as unit 
            FROM bottles 
            LEFT OUTER JOIN connections ON bottles.id = connections.id
            LEFT OUTER JOIN pollutants ON bottles.id = pollutants.id
            LEFT OUTER JOIN units ON bottles.id = units.id '; 

$selectRequest = $database->prepare($sqlQuery); 

$selectRequest->execute(); 

$result = $selectRequest->fetchAll(); 

foreach ($result as $res){ 
    $result=$res['refBottle']. "      ".$res['connections']. "      ".$res['pollutant']. "      ".$res['concentration']. "      ".$res['unit']. "      ".$res['expirationDate']; 
    echo " $result <br>"; 
    fwrite($f, $result); 
    fwrite($f, "\r\n"); 
} 
fwrite($f, "\r\n"); 
fclose($f); 
?>

Ajouter la ligne ini_set('display_errors', 1); et error_reporting(E_ALL); en haut de votre code pour que les erreurs soient affichées, alors vous pourrez peut-être voir pourquoi cela ne fonctionne pas.

La solution la plus rapide est de créer un itérateur en PHP et de supprimer le LEFT OUTER JOIN de la deuxième requête. Si vous faites un itérateur en utilisant une relation entre les tables, cela coûte plus cher (en temps) que d’utiliser foreach, for, while en PHP.

Essayez-le!

C’est bon j’au résolu l’erreur,merci pour votre aide. J’utilisais pas les foreign keys que j’ai définis dans dans ma table bottle.
(ps: je suis débutante en sql)