Moin,
in einem Programm möchte ich zusätzlich zur lokalen Datenbank eine DB auf fremdem Server zugreifen. Für jede Datenbank habe ich eine db_connect.php mit einem Array der vorhandenen Tabellen und einigen zugehörigen Funktionen.
Natürlich "hakt" es, wenn ich zur bereits include( "db_connect.php" ) noch eine include( "db_connect2.php" ) mit denselben Funktionen hinzufüge. An der Stelle bricht das PHP-Programm ohne Fehlermeldung ab.
Wenn ich nur das Array der vorhandenen Tabellen einfüge (ohne Funktionen), kann ich mit den von db_connect.php vorhandenen Funkionen die entfernte DB öffnen und lesen.
Na, gut, dann mache ich include( "db_connect2.php" ) eben innerhalb einer Funktion. Dachte ich. Wieder bricht das Programm an dieser Stelle ab. Es bricht auch ab, wenn ich die schon vorhandene und vollkommen fehlerfreie db_connect.php in der Funktion include.
Kann es sein, dass PHP keine Funktionen in einer Funktion duldet und dafür keine Fehlermeldung hat? Nee, eigentlich nicht. Dies hier läuft bis zum include:
function connectFerneDB() {
function sagWas() {
echo "<p>Funktion in der Funktion</p>";
}
sagWas();
echo "<p>vor dem include</p>";
include( "db/_db_connect.php" );
echo "<p>nach dem include</p>";
...
}
Was kann der Fehler sein?
Linuchs