Nå, i din første fil har du erklæret en global variabel global $conn; Jeg ved ikke helt hvorfor, men det ville alligevel fungere uden problemer, fordi $conn er i globalt omfang.
Men i dit andet tilfælde, når du erklærer din global variabel inde i en funktion, vil funktionen søge efter $conn som er i globalt omfang i stedet for den lokale variabel $conn som tilsyneladende har forbindelseshåndtaget.
fjern den global $conn fra din funktion, og det burde virke.
flere oplysninger om variable omfang - https://php.net/manual/en /language.variables.scope.php