Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][PostgreSQL]Wyciaganie wartości zpytania z obiektu
Muadib
post
Post #1





Grupa: Zarejestrowani
Postów: 87
Pomógł: 0
Dołączył: 9.11.2005

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


Mam fajny zapytajnik, mam oto klase połaczenia sie i zapytań do postgree sql

  1. <?php session_start();
  2.  
  3. class postgresql
  4. {
  5. public function __construct($host, $port, $user, $password, $dbname)
  6. {
  7. // Połączenie
  8. if(!$this->db = pg_connect('host='.$host.' port='.$port. ' dbname='.$dbname.' user='.$user.' password='.$password.''))
  9. {
  10. $this->error = true;
  11. throw new Exception('Błąd Połączenia z Bazą Danych - '.pg_last_error());
  12. }
  13. // Globalna tranzakcja start
  14. pg_query($this->db, 'BEGIN');
  15. }
  16. public function query($query)
  17. {
  18. // wykonywanie zapytań nie-SELECT
  19. if(!ereg('SELECT', $query) and !$this->error)
  20. {
  21. if(!$result = pg_query($this->db, $query))
  22. {
  23. $this->error = true;
  24. throw new Exception('Błąd wykonania zapytania - ('.$query.') - '.pg_last_error());
  25. }
  26. else
  27. {
  28. return true;
  29. }
  30. }
  31. else
  32. {
  33. return false;
  34. }
  35. }
  36. public function query_select($query)
  37. {
  38. // Zapytania select
  39. if(!$this->error)
  40. {
  41. if(!$result = pg_query($this->db, $query))
  42. {
  43. $this->error = true;
  44. throw new Exception('Błąd wykonania zapytania - ('.$query.') - '.pg_last_error());
  45. }
  46. print "<table border = '1'>";
  47. echo "<tr id = 'naglowki'>";
  48. if (preg_match('/alias/', $query))
  49. {
  50. for ($x = 0; $x <= 4; $x++)
  51. {
  52.  echo "<td id='nag1'>".pg_field_name($result, $x).'</td>';
  53. }
  54. }
  55. else if (preg_match('/domain/', $query))
  56. {
  57. for ($x = 0; $x <= 5; $x++)
  58. {
  59. echo "<td id='nag2'>".pg_field_name($result, $x).'</td>';
  60. }
  61. }
  62. else if (preg_match('/mailbox/', $query))
  63. {
  64. for ($x = 0; $x <= 8; $x++)
  65. {
  66. echo "<td id='nag3'>".pg_field_name($result, $x).'</td>';
  67. }
  68. }
  69. echo'</tr>';
  70. while($row = pg_fetch_array($result, null, PGSQL_ASSOC))
  71. {
  72.  $username = $row['username'];
  73.  $username_rpl = preg_replace('/@mw.ron.int/', '', $row['username']);
  74.  
  75.  print '<tr>';
  76.  foreach ($row as $widok) { echo "<td>".$widok."</td>"; }
  77.  if (preg_match('/rem/', $_SERVER['REQUEST_URI']) && preg_match('/mailbox/', $query) && $_SESSION['check'] == true )  
  78.  print '</tr>';
  79. }
  80. print '</table>';
  81. unset($result);
  82. unset($row);
  83. }
  84. }
  85. public function escape($string)
  86. {
  87. return pg_escape_string($string);
  88. }
  89. function __destruct()
  90. {
  91. if(!$this->error)
  92. {
  93. pg_query('COMMIT');
  94. }
  95. else
  96. {
  97. pg_query('ROLLBACK');
  98. }
  99. unset($this->db);
  100. unset($this->error);
  101. }
  102. }
  103. ?>


Zapytanie do klasy wysyła sie za pomoca

  1. <?php
  2. $pgs->query_select("SELECT * FROM alias ")
  3. ?>


A mam pytanie do tego zapytania bo zwraca mi całą tabelkę ale chciałbym żeby zwracała mi pojedyncze wartości z tabelki w formie string na przykład po zapotaniu z warunkiem zwraca mi dane 1 użytkownika w postaci tabelki, z tej tabelki chciałbym wyciągnąc username w postaci zmiennej.

Ten post edytował Muadib 21.05.2008, 12:52:22
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
Shili
post
Post #2





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

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


możesz stworzyć zapytanie w postaci:
  1. SELECT username FROM alias

Wtedy zwróci Ci jedynie username.
Albo dobrać się do odpowiedniego pola we wszystkich zwróconych wynikach przez odpowiedni indeks stworzonej tabilcy.

Jeśli chcesz dane jednego określonego użytkownika za pomocą klauzuli WHERE musisz określić którego.
Go to the top of the page
+Quote Post
Ociu
post
Post #3





Grupa: Moderatorzy
Postów: 1 566
Pomógł: 37
Dołączył: 14.05.2003
Skąd: Kraków




Prosze poprawić nazwę tematu aby był zgodny z regulaminem panującym na tym subforum.
Go to the top of the page
+Quote Post
Muadib
post
Post #4





Grupa: Zarejestrowani
Postów: 87
Pomógł: 0
Dołączył: 9.11.2005

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


Hmm no nie do końca o to chodzi, chcłabym z takiego zapytania wyciągnąć wartość w postaci np

  1. <input type='text' name='username' value='Tu wartośc z zapytani chociaz nie wiem jak wyciagnac '>


Ten post edytował Muadib 21.05.2008, 12:53:07
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 01:37