Verbindung per PHP zu Postgresql

Hallo an alle,

lange lange ist es bei mir her aber nun will ich mich wieder mit Postgresql beschäftigen. Dazu habe ich meinen alten Raspberry Pi wieder zum leben erweckt. Dieser hostet Postgresql 9.4.

Früher habe ich lokal mit Python daten in den Datenbanken gespeichert. Nun möchte ich dies über PHP versuchen. Über Get oder Post möchte ich daten von einem ESP o der Arduino an den Pi senden.

Nun habe ich nachfolgendes Skript versucht.

<hmtl>

<body>
<?php

$conn_string="host=192.168.178.29 dbname=pi_DB user=postgres password=postgres";

$dbcoon = pg_connect($conn_string);

/*
$dbconn = pg_connect("host=192.168.178.29 dbname=pi_DB user=postgres password=postgres port=5432");
*/

if(dbconn) {
echo 'connection attempt succeeded';
} else {
echo 'connection attempt failed';
}

?>

</body>

</html>


In der pg_hba.conf habe ich unter host auf host all all 192.168.178.1/24 trust gestellt. Der Pi hat die IP 192.168.178.29

Nun erhalte ich leider keine Fehlermeldung in PHP bzw. weiß ich noch nicht so recht wie ich mir diese anzeigen lassen kann. Aber es kommt auch keine Verbindung zu PostgreSql zu stande.

Kann mir jemand helfen?

Kannst du dich mit psql mit der Datenbank verbinden?

Ich kann mich vom Client mit pgadmin verbinden

Woher weißt du, dass du dich nicht mit PHP zur Datenbank verbinden kannst, wenn keine Fehlermeldung erscheint? Leider kann ich dir auf dem Feld PHP nicht weiterhelfen.

Viele Grüße
Uwe

PHP ist bei mir auch schon länger her und war auch nicht so ausgiebig …

Aber, baue zuerst einmal diese Test PHP Seite. Ich nenne diese eigentlich immer phpinfo.php.

<?php
phpinfo();
?>

Damit kannst du die Server-Einstellungen von PHP prüfen. Bspw. wird PostgreSQL als verfügbares PHP-Modul überhaupt angezeigt.
Wenn du Fehlermeldungen vermisst, dann schaue eventuell mal in die Web-Server Logs.
So weit ich mich entsinnen kann, gab es auch Setting für die Fehlermeldungen in der php.ini.

Ich habe mal phpinfo gescheckt und finde dort nachfolgendes:

PostgreSQL driver for PDO Edin Kadribasic, Ilia Alshanetsky
PostgreSQL Jouni Ahto, Zeev Suraski, Yasuo Ohgaki, Chris Kings-Lynne

Das sollte doch passen oder?

Was ist mit den Sicherheitseinstellungen aus ist die pg-hba.conf richtig? bei dem trust bzw. der Ip bin ich mir nicht ganz sicher.

Warum bin ich mir sicher das es nicht geht? Nun ja ich bekomme überhaupt keine aussgabe also kein Connection succeeded oder failed

Schau mal hier bzgl. Aktivierung Error Logging: