Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z polaczeniem postgresql
mrsairus
post 21.02.2013, 12:55:05
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 21.02.2013

Ostrzeżenie: (0%)
-----


Nie chce polaczyc sie z baza, powiedzcie co jest zle?

<?php
$polaczenie = pg_pconnect("host=localhost port=5432 dbname=postgres user=postgres password=postgres");
if (!$poloczenie) {
echo "wystapil błąd.\n";
exit;
}



$imie=$_GET['imie'];
$nazwisko=$_GET['nazwisko'];
$marka=$_GET['marka'];
$model=$_GET['model'];
$nr_rej=$_GET['nr_rej'];

/*
echo($imie);
echo($nazwisko);
echo($marka);
echo($model);
echo($nr_rej);
*/



$wynik = pg_query($polaczenie, "INSERT into klient Values (1,$imie,$nazwisko,$marka,$model,$nr_rej)");


if (!$wynik) {
echo "Wystąpił błąd.\n";
exit;
}


?>
Go to the top of the page
+Quote Post
viking
post 21.02.2013, 13:03:18
Post #2





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Jaki błąd dostajesz? Spróbuj host 127.0.0.1


--------------------
Go to the top of the page
+Quote Post
mmmmmmm
post 21.02.2013, 13:06:40
Post #3





Grupa: Zarejestrowani
Postów: 1 421
Pomógł: 310
Dołączył: 18.04.2012

Ostrzeżenie: (0%)
-----


Błędów możesz mieć mnóstwo:
1. czy na pewno tabelę masz na bazie 'postgres'?
2. czy wszystkie $... są liczbami?
Go to the top of the page
+Quote Post
mrsairus
post 21.02.2013, 13:53:47
Post #4





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 21.02.2013

Ostrzeżenie: (0%)
-----


baza jest na 100% postgres ale $ nie sa liczbami, wiec wstawilem ' ' i nadal nie chce wstawic, sprawdzalem polaczenie PGSQL_CONNECTION_OK i wyskakuje potwierdzenie polaczenie ale nadal nie moge wstawic nic do bazy


teraz wyglada to tak


<?php

$dbconn = pg_pconnect("host=localhost port=5432 dbname=postgres user=postgres password=postgres") or die("Nie można się połączyć");
$stat = pg_connection_status($dbconn);
if ($stat === PGSQL_CONNECTION_OK) {
echo 'Status połączenia ok';
} else {
echo 'Status połączenia bad';
}


$imie=$_GET['imie'];
$nazwisko=$_GET['nazwisko'];
$marka=$_GET['marka'];
$model=$_GET['model'];
$nr_rej=$_GET['nr_rej'];

/*
echo($imie);
echo($nazwisko);
echo($marka);
echo($model);
echo($nr_rej);
*/



pg_query("INSERT into klient (id,imie,nazwisko,marka,model,nr_rej) Values (1,'$imie','$nazwisko','$marka','$model','$nr_rej')");

$wynik = pg_query ("SELECT imie FROM klient");
if (!$wynik) {
echo "Wystąpił błąd.\n";
exit;
}


?>

Ten post edytował mrsairus 21.02.2013, 13:53:09
Go to the top of the page
+Quote Post
Crozin
post 21.02.2013, 14:00:18
Post #5





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


1. Dlaczego nie korzystasz z PDO?
2. http://www.php.net/manual/en/ref.pgsql.php - czy uda Ci się znaleźć funkcję zwracającą konkretny komunikat błędu?
Go to the top of the page
+Quote Post
mmmmmmm
post 21.02.2013, 14:17:08
Post #6





Grupa: Zarejestrowani
Postów: 1 421
Pomógł: 310
Dołączył: 18.04.2012

Ostrzeżenie: (0%)
-----


id to autonumer?
Jeśli tak, to go nie podawaj.
  1. $wynik=pg_fetch_array(pg_query("INSERT into klient (imie,nazwisko,marka,model,nr_rej) Values ('$imie','$nazwisko','$marka','$model','$nr_rej') returning id;"), null, PGSQL_NUM);
  2. $dopisane_id=$wynik[0];

Możesz jeszcze nie mieć praw do jakichś czynności, ale jako postgres to raczej niemożliwe.
Ale last_error prawdę ci powie.
Go to the top of the page
+Quote Post
mrsairus
post 21.02.2013, 14:44:10
Post #7





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 21.02.2013

Ostrzeżenie: (0%)
-----


poki co bangla super dzieki
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 22:39