Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Jak wstawić do bazy?
marcinp1984
post
Post #1





Grupa: Zarejestrowani
Postów: 112
Pomógł: 0
Dołączył: 17.05.2009

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


Chyba tylko ja nic nie wiem bo wszystkie ostatnie posty są moje (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Tym razem mam takie coś:

  1. $query = pg_query("insert into tematy values(default, '$_GET[id_tematu]', '$tytul', '$opis', current_timestamp, null, 'f', $_GET[id_uzytkownika], null)");
  2.  
  3. $query = pg_query("insert into wpisy values(id, '$tresc', 'current_timestamp', null, '$GET[id_tematu]', $_GET[id_uzytkownika])");


Wszystko to wstawiane jest do bazy jednocześnie po kliknięciu w jeden przycisk... przynajmniej takie były moje założenia.
Czy istnieje może jakiś sprytny sposób aby do pola id tabeli wpisy dodać jakoś id(default) tabeli tematy?? W jaki sposób można takie coś rozwiązać?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
blooregard
post
Post #2


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Tak, po wykonaniu pierwszego INSERT-a pobierasz ID ostatnio wprowadzonego rekordu (http://pl2.php.net/manual/pl/function.pg-last-oid.php), a następnie tę wartość używasz w kolejnym zapytaniu.
Go to the top of the page
+Quote Post
marcinp1984
post
Post #3





Grupa: Zarejestrowani
Postów: 112
Pomógł: 0
Dołączył: 17.05.2009

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


Zrobiłem coś takiego:


  1. $query = pg_query("insert into tematy values(default, '$_GET[id_tematu]', '$tytul', '$opis', current_timestamp, null, 'f', $_GET[id_uzytkownika], null)");
  2. $id = pg_last_oid($query);
  3. $query = pg_query("insert into wpisy values($id, '$tresc', 'current_timestamp', null, '$GET[id_tematu]', $_GET[id_uzytkownika])");


Tyle że pobrało sobie id nie tego tematu który się wstawia w tym momencie tylko tego który już był w bazie wcześniej i do niego sobie przypisało wpis (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) Tak to powino by zrobione czy nie bardzo??

hmmm... faktem jest że troszke sam namieszałem w tym kodzie bo nie w to mijsce wstawiłem zmienną (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) Ale tak czy siak nie działa...

  1. <?php
  2. $query = pg_query("insert into tematy values(default, '$_GET[id_tematu]', '$tytul', '$opis', current_timestamp, null, 'f', $_GET[id_uzytkownika], null)");
  3. $id = pg_last_oid($query);
  4. $query = pg_query("insert into wpisy values(default, '$tresc', 'current_timestamp', null, '$id', $_GET[id_uzytkownika])");
  5. ?>


no i w tej postaci to już wpisu w ogóle do bazy nie dodaje (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
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: 2.10.2025 - 18:31