Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PHP i PostgreSQL - Błąd połaczenia
Forum PHP.pl > Forum > PHP
Gordon1x
Mam zainstalowaną bazę danych PostgreSQL 8.1 i PHP5-cgi z obsługą bazy danych. Z PostgreSQL mam połączenie przez pgAdmin III i phpPgAdmin.
Napisałem krótki skrypt, aby połączyć się z bazą danych, ale zwraca błąd:

  1. Warning: pg_connect() [function.pg-connect]: Unable to connect to PostgreSQL server: FATAL: database "postgres,host=localhost" does not exist in /var/www/index.php on line 5


Przypuszczam że błąd musi być w skrypcie ponieważ przez phpPgAdmin mogę się zalogować więc konfiguracja bazy danych i php jest poprawna.


Skrypt do połączenia z bazą danych.
  1. <?php
  2. $connection=pg_connect("dbname=postgres,host=localhost port=5432 user=postgres password=haslo");
  3. ?>



Z góry dziękuję za pomoc w rozwiązaniu problemu.
Ociu
  1. host=localhost port=5432 dbname=postgres user=postgres password=haslo

http://pl2.php.net/pg_connect
Gordon1x
Z tym już się uporałem, ale pojawił się nastepny problem. Jak wykonam kod nie są w funkcji są zwracane zmienne:
  1. <?php
  2. $connection = pg_connect("host=$baza[host] port=$baza[port] dbname=$baza[name] user=$baza[user] passw
    ord=$baza[pass]"
    ) or die ("Błąd");
  3.  
  4. function setup($connection){
  5.  $query = "SELECT kod, superior FROM nowa WHERE superior = '1' LIMIT 1";
  6.  $wynik = pg_query($connection, $query);
  7.  
  8.  while ($record = pg_fetch_array($wynik)){
  9. $kod = $record[0];
  10. $superior = $record[1];
  11.  }
  12.  
  13.  return $kod;
  14. }
  15.  
  16.  print ("$kod");
  17. ?>


Po wykonani tego kodu nie jest drukowana zmienna $kod, ale gdy dam funkcję print ("") w funkcji setup to zmienna jest drukowana.
Jak rozwiązać ten problem aby móc używać zmienną w dokumenie poza funkcją.
jezoo
powinno byc:
  1. <?php
  2. print(setup($connection));
  3. ?>

lub
  1. <?php
  2. function setup($connection){
  3. global $kod;
  4.  $query = "SELECT kod, superior FROM nowa WHERE superior = '1' LIMIT 1";
  5.  $wynik = pg_query($connection, $query);
  6.  
  7.  while ($record = pg_fetch_array($wynik)){
  8. $kod = $record[0];
  9. $superior = $record[1];
  10.  }
  11. }
  12. // Wykonanie funkcji 
  13. setup($connection);
  14.  
  15. print($kod);
  16. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.