![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 7.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam mam problem w stawieniem w tym samym czasie danych do dwóch tabel. Kod wyglada nastepująco:
Kod <font size="1"><?php $uzytkow_imie=$_POST['uzytkow_imie']; $uzytkow_nazwisko=$_POST['uzytkow_nazwisko']; $PESEL=$_POST['PESEL']; $firma=$_POST['firma']; $mail=$_POST['mail']; if (!$uzytkow_imie ||!$uzytkow_nazwisko || !$PESEL || !$firma || !$mail) { echo 'Nie podano wszystkich danych <br\>' .'Prosze wrócić do poprzedniej strony'; exit; } if (!get_magic_quotes_gpc()) { $uzytkow_imie=addslashes($uzytkow_imie); $uzytkow_nazwisko=addslashes($uzytkow_nazwisko); $PESEL=addslashes($PESEL); $fima=addslashes($firma); $mail=addslashes($mail); } @ $db=new mysqli('localhost','******','*****','przychodnia_1'); if(mysqli_connect_errno()) { echo 'Błąd , Nie połączono z baza danych. Spróbuj ponownie'; exit; } $zapytanie_uzytkow = "insert into uzytkownik values ('".$uzytkow_imie."','".$uzytkow_nazwisko."')"; $zapytanie_info= "insert into uzytkownik_info values ('".$PESEL."','".$fima."','".$mail."')"; $wynik_uzytkow = $db->query($zapytanie_uzytkow); $wynik_info = $db->query($zapytanie_info); if($wynik_uzytkow && $wynik_info) echo $db->affected_rows. 'Pacjent zapisany do bazy'; else { echo 'Nie zapisano pacjenta'; } echo $zapytanie_uzytkow; echo $wynik_info; ?></font> Nastepuje łaczenie z baza. Pierwsza czesc tzn zmienna $wynik_uzytkow jest wyswietlana(dla sprawdzenia), jednak $wynik_info juz nie :(. Jak to rozwiazac ?? Ten post edytował alsz82 19.07.2009, 23:37:11 |
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 6 Dołączył: 15.07.2009 Skąd: Śląsk->Ruda Śląska Ostrzeżenie: (0%) ![]() ![]() |
Pierwsza czesc tzn. zmienna $wynik_uzytkow jest wyswietlana(dla sprawdzenia), jednak $wynik_info juz nie (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) . Kod echo $zapytanie_uzytkow; echo $wynik_info; eee piszesz, że zmienna $wynik_uzytkow jest wyświetlana a w echo masz $zapytanie_uzytkow, chyba, że dajesz echo gdzie indziej a kodu nie dałeś. wyprintuj sobie oba zapytania i wklej do phpMyAdmin, żeby zobaczyć, czy w nich nie ma błędów. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 221 Pomógł: 14 Dołączył: 11.03.2009 Skąd: Lubaczów Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 7.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam, dzieki za informacje, bardzo mi pomogły wszystko sie dodaje tam gdzie trzeba. Dzieki InosU31,planet.
Jednak mam pewien problem, poniewaz chce pobrac dane z pierwszego zapytania tzn. id_uzytkownika ktore jest auto_increment PRIMAY_KEY, i chce aby dane "Id_uzytkownika z pierwszego zapytania" zapisały sie do drugiego zapytania pod id_pacjent.Jednak dane w pierwszym zapytania nie sa jeszcze zapisane poniewaz musi byc spełniony warunek ze "wszystkie pola musza byc uzupelnione i byc zapisane" jezeli pacjent nie zostal zapisany to nie mam id_uzytkownika !!. Dane sa zapisywane jezli z pacla nadam wartosc id_pacjent w $zapytanie_info Kod @ $db=new mysqli('localhost','******','*******','przychodnia_1'); $zapytanie_uzytkow = "insert into uzytkownik (`id_uzytkow` ,`uzytkow_imie` ,`uzytkow_nazwisko`) values (null,'".$uzytkow_imie."','".$uzytkow_nazwisko."')"; $id_pacjent = mysqli_insert_id($db); echo "ID=" .$id_pacjent; echo '<br>'; $zapytanie_info= "insert into uzytkownik_info (`id_info` ,`id_uzytkow` ,`PESEL` ,`mail` ,`firma`) values (NULL,'".$id_pacjent."','".$PESEL."','".$firma."','".$mail."')"; Chce aby dane były pobierane automatycznie. Wyczytalem na forum o zastosowaniu funkcji mysql_insert_id(), id_pacjent=0 !!; ale w moim przypadku nie działa :( Czekam na na sugestie.POZDRAWIAM Ten post edytował alsz82 20.07.2009, 22:21:13 |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
No jak masz mieć ID, skoro nie wykonujesz zapytania...? (IMG:http://forum.php.pl/style_emoticons/default/dry.gif)
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 7.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
No jak masz mieć ID, skoro nie wykonujesz zapytania...? (IMG:http://forum.php.pl/style_emoticons/default/dry.gif) Problem po czesci rozwiazany zrobilem to nastepujaco moze komus sie przyda: Kod mysqli_query($db,$zapytanie_uzytkow); mysqli_insert_id($db); echo "Pokaz id_pacjenta= ',mysqli_insert_id($db); $id_pacjent=mysqli_insert_id($db); Tylko zastanawia mnie czemu wartosc mysqli_insert_id($db) wzrasta za kazdym razem o 2 a nie o 1 ? Ten post edytował alsz82 21.07.2009, 00:22:39 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Problem po czesci rozwiazany zrobilem to nastepujaco moze komus sie przyda: Kod mysqli_query($db,$zapytanie_uzytkow); mysqli_insert_id($db); echo "Pokaz id_pacjenta= ',mysqli_insert_id($db); $id_pacjent=mysqli_insert_id($db); Tylko zastanawia mnie czemu wartosc mysqli_insert_id($db) wzrasta za kazdym razem o 2 a nie o 1 ? Jak dla mnie dlatego, że wywołujesz tą funkcję aż trzy razy? |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 7.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Jak dla mnie dlatego, że wywołujesz tą funkcję aż trzy razy? Wielkie dzieki miales racje, problem polegał ze insert był wykonywany 2 razy Kod $zapytanie_uzytkow = "insert into uzytkownik (`id_uzytkow` ,`uzytkow_imie` ,`uzytkow_nazwisko`) values (null,'".$uzytkow_imie."','".$uzytkow_nazwisko."')"; a w dalszej czesci kodu : Kod $wynik_uzytkow = $db->query($zapytanie_uzytkow); i dane był wprowadzane 2 razy dzieki wszystkim ktorzy odpowiadali na dany temat :). Temat uwazam za zamkniety |
|
|
![]() ![]() |
![]() |
Aktualny czas: 25.09.2025 - 17:05 |