![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 28.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Rozpoczynam swoją zabawę z PHP i MySQL od pisania bazy danych na informatyce, dostałam trochę teorii, a reszta to owoc googlowania i wyciągania wniosków, więc bardzo prawdopodobne jest, że napiszę tu jakieś głupoty ;p Chcę wykonać następujący manewr: pobrać dane z bazy (1 tabela, 2 kolumny: imię i nazwisko), umieścić je w formularzu typu select, ale na jednej liście (to zresztą zrobiłam), następnie pobrać dane, które wybierze użytkownik z tej listy i zapisać je w innej tabelce w bazie. Nic prostszego, tylko że pracuję na 2 kolumnach, więc dane pobrane z listy to imię i nazwisko razem, zapisane pod jedną zmienną - a ja potrzebuję odszukać potem id tych danych, które w bazie nadal są zapisane osobno. Jak to rozwiązać? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
A nie można do tej tabeli dodać jednej kolumny `id` przed dwoma pozostałymi jako klucz podstawowy z atrybutem auto_increment?
Ten post edytował pyro 28.01.2010, 21:47:34 -------------------- ET LINGUA EIUS LOQUETUR IUDICIUM
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 28.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
No mam w każdej tabelce id z AI. Tylko kiedy pobieram ze zmiennej dane "Jan Kowalski", to baza "nie wie", że to jest to samo co "1" "Jan" "Kowalski".
|
|
|
![]()
Post
#4
|
|
![]() Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
do value wpisujesz ID danego rekordu. i kurcze troche to zagmatwałaś bo nie wiem czy dobrze zrozumiałem.
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 28.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
okej, to wytłumaczę jeszcze raz
![]() Mam w tabelce w 3 kolumnach dane czytelnika. ID: 1, imię: Jan, nazwisko: Kowalski. Pobieram dane 'imię' i 'nazwisko' do formularza select, i mam na rozwijanej liście różne opcje, w tym "Jan Kowalski". Opcja zapisana jest pod zmienną, której nazwę wpisuję w atrybucie name. Użytkownik wybiera tą opcję i klika na przycisk formularza, który ma za zadanie sprawdzić, jakie id ma pan Kowalski. Z tym, że dane odczytane z formularza ("Jan Kowalski") są inne niż dane w bazie ("Jan" "Kowalski"). Jaśniej? ![]() |
|
|
![]()
Post
#6
|
|
![]() Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
szczerze nie jaśniej wogóle... w bazie rekord imie Jan nazwisko Kowalski identyfikowany jest za pomocą ID 1 i to właśnie to musisz mieć w
i teraz gdy użytkownik wybierze tego Jana to w baza będzie wiedziała że Jan Kowalski ma ID 1, nie wiem co tu jeszcze można powiedzieć. -------------------- |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
@katta1992 tak jak powiedział Piotr, formularz wyśle dane z selecta, które znajdują się w atrybucie value. Ten atrybut value będzie wartością, którą powinnaś szukać w bazie danych (kolumna `id`).
-------------------- ET LINGUA EIUS LOQUETUR IUDICIUM
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 695 Pomógł: 65 Dołączył: 27.07.2009 Skąd: Y Ostrzeżenie: (0%) ![]() ![]() |
pobierz jeszcze id i wyświetl ją w value . przy wysyłaniu danych przez formularz dajesz takie zapytanie
jeżeli zmienna $wynik tzn że taki rekord w bazie istnieje |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 221 Pomógł: 14 Dołączył: 11.03.2009 Skąd: Lubaczów Ostrzeżenie: (0%) ![]() ![]() |
mi sie wydaje ze jak juz pobierzesz dane do formularza:
[PHP] pobierz, plaintext
to pozniej musisz je rozlaczyc np: [PHP] pobierz, plaintext
i wrzucasz do bazy jako imie = t1 Sprobuj, ja tak rozlanczalem date ale odwrotnie jak ty czyli dane pobrane z bazy musialem rozlaczyc tam gdzie jest znak spacji ja mialem pauze a pozniej umieszcalem w select ;-) Ps. nie wiem cyz to bedzie dizlalo bo u mnie troche jest to inaczej ale pokombinuj z tym foreach - te dane t1 i t2 dalem jako globalne zeby mozna bylo uzyc ich poza foreach. pozdrawiam Ten post edytował InosU31 28.01.2010, 22:23:55 |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 28.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
kod wygląda w skrócie tak:
i teraz w zmiennej czytelnik mam "Jan Kowalski", a takiej danej w bazie nie ma - przynajmniej nie w jednej kolumnie - więc nie mogę odszukać teraz, jakie id ma ten, kogo nazwisko jest zapisane w zmiennej czytelnik. Jeśli i teraz nie wiesz, o co mi chodzi, to zmienię koncepcję i zrezygnuję z tego ![]() |
|
|
![]()
Post
#11
|
|
![]() Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
o mój boże czego w tych szkołach uczą...
no i teraz masz w zmiennej (a tak naprawdę tablicy super globalnej POST) ID tego janka kowalskiego. czegóż Ci więcej do szczęścia trzeba? ![]() Ten post edytował piotrooo89 28.01.2010, 22:27:57 -------------------- |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 28.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Okej, nauczycielem nie zostanę, bo nie umiem tłumaczyć o co mi chodzi ;D
Nadal nie widzę rozwiązania, ale posiedzę nad tym jeszcze, piszę w PHP od 4 dni, więc proszę o wyrozumiałość ![]() Dziękuję za pomoc, pozdrawiam |
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
@inosU31, takie rozwiązanie jest długie, zbędne, a nawet bym powiedział błędne, panie
rozlanczalem ![]() @katta1992, twój kod powinien być bardziej w tym stylu:
I teraz jak wyślesz ten formularz to w tablicy POST będzie id czytelnika, z którym możesz robić na bazie, co tylko chcesz. Ten post edytował pyro 28.01.2010, 22:37:44 -------------------- ET LINGUA EIUS LOQUETUR IUDICIUM
|
|
|
![]()
Post
#14
|
|
![]() Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
@pyro przy *_fetch_row nie można odnosić się asocjacyjnie tylko wyliczeniowo, taka mała uwaga
![]() -------------------- |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
@pyro przy *_fetch_row nie można odnosić się asocjacyjnie tylko wyliczeniowo, taka mała uwaga ![]() Racja, dzięki, zagapiłem się i zacząłem pisać nazwami zamiast liczbami. Efekt szybkiego pisania. Przeoczenie poprawiłem. -------------------- ET LINGUA EIUS LOQUETUR IUDICIUM
|
|
|
![]()
Post
#16
|
|
![]() Grupa: Zarejestrowani Postów: 221 Pomógł: 14 Dołączył: 11.03.2009 Skąd: Lubaczów Ostrzeżenie: (0%) ![]() ![]() |
pyro zasugerowalem sie pierwszym postem katta1992 w ktorym pisala ze chce wrzucic te dane do drugiej tabeli - moze za dlugo siedze przed kompem i zle cos zrozumialem - a dopiero teraz zauwazylem o co jej chodzilo;-)
co do bledow to daruj sobie ... robie bledy i bede je robic - polonista i tak nie bede;P pozdrawiam |
|
|
![]()
Post
#17
|
|
![]() Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
co do bledow to daruj sobie ... robie bledy i bede je robic - polonista i tak nie bede;P ale jakaś znajomość ( bo mi firefox źle poprawia ![]() Ten post edytował piotrooo89 28.01.2010, 22:48:56 -------------------- |
|
|
![]()
Post
#18
|
|
![]() Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
ale jakaś znajomość (chodź podstawowa) nikt Ci nie każe być drugim prof. Miodkiem. Sorry za mały off-topic, ale to dosyć zabawne: (chodź podstawowa) Jak to mówią... trafił swój na swego ![]() -------------------- ET LINGUA EIUS LOQUETUR IUDICIUM
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 6.07.2025 - 21:44 |