![]() ![]() |
Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 5.02.2014 Ostrzeżenie: (0%)
|
Witam,
od pewnego czasu borykam się z dość trudnym dla mnie problemem, na którego rozwiązanie nie mam już pomysłów. Co chcę zrobić? Otóż chcę pobrać z bazy danych "tytuły", wyświetlić je na stronie i po podwójnym kliknięciu (tutaj operowanie na jQuery) tekst zamieniany jest w input textbox z tą wartością, co chcę zmienić. Co dalej? Dalej zmieniam "tytułu" i chcę ją "nadpisać" w bazie danych. To wszystko mam. Co mi nie działa? Dobra, wszystko pobrałem, w jQuery pokazuje się textbox z zawartością, ale przy próbie nadpisania w bazie danych nadpisuje tylko ostatni rekord. Gdziekolwiek bym tego tytułu nie zmienił - to zamienia on ostatni rekord. Co mam? W
Oczywiście wcześniej zadeklarowałem zmienną:
Cały kod jQuery:
<JS> Konsola przeglądarki wyrzuca "Wartość zmiennej id to: [tutaj jest liczba wszystkich rekordów". <PHP> Przypisanie zmiennej $id (w PHP działa bez zarzutów):
I w zmiennej do wyświetlania rekordów z bazy danych oczywiście mam diva z klasą "title". Teraz PHP. Z zapytania do bazy danych (jest ono prawidłowe, to jest pewne) chcę pobrać ID (zaznaczam, że przy numeracji po ID, np.:
wszystko działa) Natomiast, gdy chcę to zrobić to, o czym wcześniej pisałem to input z ID ma value non stop liczbę wszystkich rekordów. Potem. Zapytanie, które nadpisze mi tytuł dla wybranego ID:
Wcześniej sprawdzając czy istnieje 'submit': ---------------------------------------------------- Opisałem problem, mam nadzieję, że dość szczegółowo. 1) Uprzejmie prosiłbym o jakieś nakierowanie, coś może źle robię. 2) Czy jest możliwość, aby zamiast Double Clicka odbywało się to metodą "przytrzymania" przycisku myszy na elemencie. Pozdrawiam, Mateusz. Ma ktoś może pomysł? Podbijam wątek. Ten post edytował Snake 2.02.2017, 20:02:44 |
|
|
|
Post
#2
|
|
|
Grupa: Moderatorzy Postów: 36 561 Pomógł: 6315 Dołączył: 27.12.2004 |
Z tego co widac na tym skapym kodzie co pokazales, to wynika, ze masz jeden form na cala tabele i w kazdym wierszu tabeli tworzysz pole input o tej samej nazwie. Skoro wszystkie pola maja takie same nazwy to logiczne ze wysle sie tylko to ostatnie gdyz ono nadpisuje wszystkie inne.
Chcac zrobic jak masz, to pole ma miec nazwe tablicowa czyli nie: name="nazwa" a: name="nazwa[]" Wowczas formularz wysle te pola jako tablice i beda wszystkie. Moim jednak zdaniem i tak powinienies to zrobic inaczej, czyli jak ktos chce zapisac dane pole to nie masz wysylac calego forma jak teraz, tylko masz ajaxem wyslac to jedno pole i po sprawie. |
|
|
|
![]() ![]() |
|
Aktualny czas: 26.12.2025 - 00:51 |