Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> PHP Tabele
patt133
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 10.12.2010

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


Hey ! To mój pierwszy post (IMG:style_emoticons/default/smile.gif)

Mam takie pytanko mam kilka tabel + jedną ZBIORCZĄ ... tabelki to np autor (w niej jest kolumna Id (automatyczny) oraz autor) druga powiedzmy rok napisania (kolumny id (automatyczne) oraz rok napisania) itd. z tabelkami ... natomiast w ZBIORCZEJ (kolumny id (automatycznie) oraz UWAGA ... autor_id i r_n_id ) ... noi teraz pragnę aby z przy użyciu php w mysql wstawiał mi do ZBIORCZEJ w kolumnach autor_id oraz r_n_id ...cyferki z kolumny id z tabeli autor oraz z kolumny id z tabelki rok napisania ... w zbiorczej chce tylko cyferki ... nadmienię tylko ze takie drobiazgi jak łączenie się z bazą mysql czy wstawianie nowego rekordy do mysql przez php to pryszcz i nie musicie pisać ... pragnę się tylko dowiedzieć jak z istniejącej tabelki wczytać to do drugiej (IMG:style_emoticons/default/smile.gif) Pozdro dla tego kto czyta i jeszcze wieksze dla tego kto mi odpisze (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
CuteOne
post
Post #2





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


Usuń auto_increment w ZBIORCZEJ. Do zbiorczej wrzucasz podczas dodawania danych do innych tabel np.
  1. mysql_query("INSERT INTO autor (id,autor) values ('', '{$autor}')");
  2. $autor_id = mysql_insert_id();
  3.  
  4. mysql_query("INSERT INTO posts (id,data) values ('', '{$data}')");
  5. $data_id = mysql_insert_id();
  6.  
  7. mysql_query("INSERT INTO zbiorcza(id_autor, id_data) values ($autor_id, $data_id)");
Go to the top of the page
+Quote Post
patt133
post
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 10.12.2010

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


hmmm... ciekawe z tym mysql_insert_id() ... nie znałem tego ale i tak mi nie śmiga ... (IMG:style_emoticons/default/sad.gif) ten $autor i $data to wiem ze zmienne które wcześniej się definiuje , tam gdzie wpisuje do poszczególnych tabel autora i daty to nawet nie muszę id dawać bo mi samo dopisuje wiec tylko wartości daje ... ale aby zaznaczyć id z tej tabeli to chyba trzeba dać autor.id ... czyli z tabeli autor bierze mi "id" . W zbiorczej natomiast, że mysql dodaje mi kolejne id to ze tak powiem mi to rybka ... najważniejsze aby id wprowadzonego autora wskakiwało mi do Zbiorczej w kolumnie autor_id a drugą i kolejne tabele to bym już tak samo zrobił ... drugiego kroku nie umiem zrobić teraz aby id z autora leciało do zbiorczej autor_id... - to najważniejsze (IMG:style_emoticons/default/questionmark.gif) ? A poza tym to chyba jak daje się do zbiorczej zmienną to chyba powinno być ' "".$autor.id."" ale to drobiazg. Pozdro (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
CuteOne
post
Post #4





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


Kombinujesz - to dobrze ale nie kombinuj za bardzo (IMG:style_emoticons/default/smile.gif)

Tak jak teraz jest jest dobrze (IMG:style_emoticons/default/smile.gif) znaczy ' wstawiasz jeżeli chcesz wrzucić string (tekst, data typu: 10-02-2001 itp.) nie musisz gdy chcesz wrzucić int (liczbę). Więc jak już wcześniej wspomniałem wszystko powinno grać.

Uruchom skrypt i sprawdź co ci się dodało a co nie no i możesz również użyć raportowania błędów:
  1. mysql_query("INSERT INTO autor (id,autor) values ('', '{$autor}')") or die(mysql_error());
  2. $autor_id = mysql_insert_id();
  3.  
  4. mysql_query("INSERT INTO posts (id,data) values ('', '{$data}')") or die(mysql_error());
  5. $data_id = mysql_insert_id();
  6.  
  7. mysql_query("INSERT INTO zbiorcza(id_autor, id_data) values ($autor_id, $data_id)") or die(mysql_error());


ps. zrób tak jak pisałem wyżej czyli bez auto_increment (IMG:style_emoticons/default/smile.gif)

Ten post edytował CuteOne 11.12.2010, 00:06:13
Go to the top of the page
+Quote Post
patt133
post
Post #5





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 10.12.2010

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


Wstawia do do tabelki autor ... ale już nie do zbiorczej i co ciekawe nie wyskakuje, że jakiś błąd uczyniłem... hmmm co tu zrobić ... zapewne gdzieś błąd w tym dodawaniu do zbiorczej ... (IMG:style_emoticons/default/sad.gif)

MAM (IMG:style_emoticons/default/exclamation.gif) !!!!!!!!!! znalazłem ... niezwłocznie pragnę poinformować wszystkich, którzy mają podobny problem a przede wszystkim CuteOne ( dzięki - jesteś SUPER ) otóż ...
zamiast

mysql_query("INSERT INTO zbiorcza(id_autor, id_data) values ($autor_id, $data_id)") or die(mysql_error());

trzeba tylko dać ...


mysql_query("INSERT INTO zbiorcza(autor_id, data_id) values ($autor_id, $data_id)") or die(mysql_error());

śmiga jak ta lala SUPER ... ile ja nad tym siedziałem... o rany ....
Dzięki CuteOne

P.S. ( to była jedna z kilku części ogniwa stanowiąca część z jeszcze innego ogniwa na zaliczenie baz danych )
DZIĘKI WIELKIE (IMG:style_emoticons/default/exclamation.gif) !!!! (IMG:style_emoticons/default/smile.gif) (IMG:style_emoticons/default/smile.gif) (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
CuteOne
post
Post #6





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


omg... skąd miałem wiedzieć jakie nazwy kolumn masz w tabelach... ale dobrze, że działa (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
patt133
post
Post #7





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 10.12.2010

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


teraz zobaczyłem że jest malutki problem owszem działa ... ale jak wprowadzam z jednej tabelki ... natomiast jak z dwóch czy więcej to już ... UWAGA ... w zbiorczej mi osobne rekordy wstawia .... to na pewno ma związek z auto increment id w zbiorczej .... jak usune auto increment z id w zbiorczej to ZONK nie chce nic więcej dodawać ... Oby ten CuteOne jeszcze to przeczytał (IMG:style_emoticons/default/exclamation.gif) !

WSZYSTKO DZIAŁA ! przepraszam za zamieszanie ... Brawo CuteOne ...
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 - 07:57