Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PHP Tabele
Forum PHP.pl > Forum > PHP
patt133
Hey ! To mój pierwszy post 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 smile.gif Pozdro dla tego kto czyta i jeszcze wieksze dla tego kto mi odpisze smile.gif
CuteOne
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)");
patt133
hmmm... ciekawe z tym mysql_insert_id() ... nie znałem tego ale i tak mi nie śmiga ... 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 questionmark.gif? A poza tym to chyba jak daje się do zbiorczej zmienną to chyba powinno być ' "".$autor.id."" ale to drobiazg. Pozdro smile.gif
CuteOne
Kombinujesz - to dobrze ale nie kombinuj za bardzo smile.gif

Tak jak teraz jest jest dobrze 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 smile.gif
patt133
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 ... sad.gif

MAM 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 exclamation.gif!!!! smile.gifsmile.gifsmile.gif
CuteOne
omg... skąd miałem wiedzieć jakie nazwy kolumn masz w tabelach... ale dobrze, że działa winksmiley.jpg
patt133
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ł exclamation.gif!

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