Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]INSERT INTO dla kilku tabel
Forum PHP.pl > Forum > Przedszkole
MONII28
Witam
Mam pytanie jak zapisać dane do bazy dla kilku tabel
  1. <?php
  2. $query = ("INSERT INTO pracownik ("."data_rejestracji, login,  haslo) VALUES ( now() ,  '$logi',  '$hasl')");
  3.                     $query1 = ("INSERT INTO dane_personalne (imie, nazwisko,  wiek, nr_tel, email ) VALUES ( '$imie' ,  '$nazwisko',  '$rok', '$tel', '$mail')");
  4.                //INSERT INTO adres (miejscowosc, ulica,  nr, kod, wojewodztwo, powiat) VALUES ( '$miej',  '$ulica', '$nr', '$kod', '$miej','$woj','$powiat' );
  5.                //INSERT INTO szkola (nazwa_szkoly) VALUES ( '$szkola' );
  6.                //INSERT INTO doswiadczenie_zawodowe (nazwa_firmy, stanowisko, data_przyjecia, data_zwolnienia) VALUES ( '$firma', '$stano', '$zatod', '$zatdo' );
  7.                //INSERT INTO umiejetnosc (nazwa) VALUES ( '$kurs' );
  8.                    //INSERT INTO jezyk_obcy (nazwa) VALUES ( '$jobcy' );
  9.                        //INSERT INTO program_komputerowy (nazwa) VALUES ( '$pkom' );
  10.                            //INSERT INTO maszyna (nazwa) VALUES ( '$masz' );
  11.                                //INSERT INTO jezyk_programowania (nazwa) VALUES ( '$jprog' );
  12.                                    //INSERT INTO prawo_jazdy (kategoria) VALUES ( '$pj' )";
  13.             $zapytanie=mysql_query ($query);
  14. ?>
nospor
  1. <?php
  2. $sql = 'pierwsze zapytanie';
  3. $sql = 'drugie zapytanie';
  4. //.... i tak dalej
  5. ?>
Rafal Filipek
za jednym zamachem, zapytaniem sie nie da. musisz robic osone zapytania dla kazdej tabeli.
zulus
A te tabele mają jakieś relacje? Jak nie to wykonaj kilka razy query lub multi_query i śmiga. Jak nie to poczytaj sobie np o mysql_insert_id() oraz o tranzakcjach.
MONII28
Tabele mają relacje, muszę jeszcze przekazywać id poprzez mysql_insert_id();
Tabela pracownik ma klucze obce idDane_personalne, idAdres oraz idCV.
Tabela CV ma klucze obce idDane-personalne idAdres idUmiejetnosci .
Tabela CV połączona jest z tabelami doswiadczenia_zawodowe, szkola, połączenia te są wiele do wiele.
zulus
No to tak jak napisał ~nospor z tym że po wykonaniu każdego zapytania nowe budujesz używając tego co zwróci mysql_insert_id.

BTW: Tu aż się prosi o tranzakcje, ale te się bardziej intuicyjnie realizuje przez MySQLi w php5 winksmiley.jpg
MONII28
Mam tak .
  1. <?php
  2. $query = ("INSERT INTO adres (miejscowosc, ulica,  nr, kod, wojewodztwo, powiat) VALUES ( '$miej',  '$ulica', '$nr', '$kod', '$woj','$powiat' )");
  3.                 mysql_query($query);
  4.                 $id = mysql_insert_id();
  5.            
  6.                     $query1 = ("INSERT INTO dane_personalne (imie, nazwisko,  wiek, nr_tel, email, idAdres ) VALUES ( '$imie' ,  '$nazwisko',  '$rok', '$tel', '$mail', '$id')");
  7.                      mysql_query($query1);
  8. ?>

Dziękuje za pomoc.
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.