24. september 2006 - 22:50Der er
19 kommentarer og 1 løsning
PHP og postgres
hej
jeg er lidt ny i PHP verden og kender lidt til SQL
jeg har en apache webserver kørende der understøtter php, mit problem er at jeg ikke kan få PHP til at snakke med min postgres database, er der nogle der kan lave et eksempel i ved der virker, jeg har google i 10 timer nu, så har set mange man kan sku ikke få det til at virke, jeg ved at min server understøtter PHP, det har jeg tjekket.
Er postgres understøttet af din PHP? Prøv at lave en side med følgende indhold: <?php phpinfo(); ?> og se om du har en pgsql del... Hvis ikke, så mangler du postgresql support...
jeg kan ikke finde noget med "pgsql" heller ikke når jeg søger på "postgres" finder den noget på siden så det har jeg vel ikke, hvordan får jeg sådan en pgsqldel
jeg har fået den til at vise pqsql når jeg kører <?php phpinfo(); ?> men jeg kan stadig ikke få det til at virke, er der en måde jeg kan teste på om den overhoved snakker sammen med min postgres database? noget kode jeg kan køre eller noget?
jeg har gemt den som test.php og kørt den via min webserver, men det eneste den spytter ud er: $db = pg_connect("host=localhost port=5432 dbname=MinDB user=postgres password=postgres"); if ( pg_connect( $connStr ) ) { echo "Det lykkedes..."; } else { echo "Kunne ikke connecte til databasen... PG gav fejlen: " . pg_last_error(); }
jeg bruger pgadmin og har oprette database der og prøvet nogle querys der virker fint. jeg er ny i PHP, jeg kan ikke helt se hvad $connStr skal gøre? er det ikke bare en variabel eller returner den true?
Nej, $connStr indeholder de informationer som PHP skal bruge for at forbinde til din database... Hostnavn, brugernavn, kodeord og databasenavn - Uden dem ved den jo ikke hvad du skal gøre - De samme ting har du jo skrevet i pgAdmin...?
kan du lave en query i PHP der går ind i databasen i en tabel der hedder kunde og går ind i den og printer alle navne ud fra en kolonne der hedder navn, bare for at se om måske virker så
Tjah, men fandt vi ikke ud af at webserveren ikke kunne connecte? Denne burde gøre det såfremt databasenavn, brugernavn, kodeord og hostnavn er korrekt:
<?php
$c = pg_connect( "host=localhost port=5432 dbname=MinDB user=postgres password=postgres" ) or die( "Kan ikke forbinde til databasen!" ); $qh = pg_query( $c, "SELECT navn FROM kunde" ); while ( $row = pg_fetch_assoc( $qh ) ) { echo "Navn: $row[navn]<br>"; } pg_free_result( $qh ); pg_close( $c );
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.