Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Dwa Submit-y, jeden Radio button
Jokeer
post 17.04.2012, 18:27:06
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 2.06.2008

Ostrzeżenie: (0%)
-----


Witam, natknąłem się na probem, którego nie potrafię rozwiązać. Chodzi o to, że w formie mam kilka pozycji w tabeli, przy każdej Radio button. Potrzebuje zrobić coś takiego, że po wyborze odpowiedniego radio buttona, użytkownik w zależności co chce zrobić z danymi z radio buttona wybiera sobie jeden z dwóch przycisków. Niestety nie wiem jak to wykonać i czy jest to w ogóle możliwe, mam nadzieje że opisałem mój problem wystarczającą, ale dla lepszego zobrazowania problemu, zamieszczę obrazek, który przedstawi sytuację, o której mówie.



Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 14)
tehaha
post 17.04.2012, 19:39:29
Post #2





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


rozumiem, że problem dotyczy detekcji, który button został naciśnięty. Rozpoznania dokonujesz na podstawie tego, który z nich został przesłany w tablicy $_POST

w html dajesz:

  1. <input type="radio" name="id" value="1"/>
  2. <input type="radio" name="id" value="2"/>
  3. <input type="radio" name="id" value="3"/>
  4.  
  5. <input type="submit" name="delete" value="usuń"/>
  6. <input type="submit" name="edit" value="edytuj"/>


po stronie php:

  1. if(isset($_POST['delete']))
  2. {
  3. //kliknięto w usuń
  4. }
  5. else
  6. {
  7. //kliknięto w edit
  8. }
Go to the top of the page
+Quote Post
celbarowicz
post 17.04.2012, 20:43:29
Post #3





Grupa: Zarejestrowani
Postów: 253
Pomógł: 31
Dołączył: 30.03.2009
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


Zamiast submitów możesz użyć buttony.
Do każdego buttona możesz przypisać odpowiednią funkcję onclick i dane przekazać za pomocą jq i ajaksa do odpowiedniego pliku.
Go to the top of the page
+Quote Post
kamil4u
post 17.04.2012, 21:44:13
Post #4





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


@celbarowicz: Tak się tego nie robi. Prawidłowe rozwiązanie to to podane przez ~tehaha i tylko to. Ew. jak chcesz mieć wszystko dynamicznie( przez AJAX ) to jedynie nadpisujesz JS kod w taki sposób jak Ty chciałbyś to zrobić. Generalnie jest zasada, że jeżeli da się coś zrobić bez używania JS to się właśnie tak to robi, a później jedynie dodaje się odpowiednie efekty.

Pozdrawiam


--------------------
Go to the top of the page
+Quote Post
Jokeer
post 17.04.2012, 22:05:52
Post #5





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 2.06.2008

Ostrzeżenie: (0%)
-----


Dzięki chłopaki, problem rozwiązany sposobem podanym przez tehaha smile.gif
Go to the top of the page
+Quote Post
celbarowicz
post 18.04.2012, 12:37:09
Post #6





Grupa: Zarejestrowani
Postów: 253
Pomógł: 31
Dołączył: 30.03.2009
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


kamil4u załamałeś mnie totalnie. Zgadzam się z tym, że jq,ajax to ostateczność -ujawniane są bowiem nazwy plików itp..
Sądziłem, że po wciśnięciu submita skrypt oczekuje na efekt działania i przynajmniej część jego przeładuje się.
Pytam więc: po kiego diabła ten jq-ajax?
Dlaczego jest tak wiele pytań->jak nie przeładować?
Pozdro.
Go to the top of the page
+Quote Post
kamil4u
post 18.04.2012, 13:12:19
Post #7





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Nie rozumiem biggrin.gif

Opisz dokładniej co masz na myśli i czy się zgadzasz z tym co napisałem czy nie, czy masz jakieś uwagi lub argumenty przeciw lub za. Bo teraz to nie wiem o co Ci chodzi.

Cytat
Pytam więc: po kiego diabła ten jq-ajax?

No właśnie nie rozumiem. Ty zaproponowałeś to rozwiązanie...


--------------------
Go to the top of the page
+Quote Post
Jokeer
post 21.04.2012, 19:45:43
Post #8





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 2.06.2008

Ostrzeżenie: (0%)
-----


Panowie, mam teraz inny problem, mianowicie da się wartość zmiennej $_GET przesłać dwukrotnie? Tzn. mam jej wartość w jednym z formularzu, bo wysyłam ją do niego z innego formularza, teraz potrzebuje użyć jej jeszcze raz, ale już w innym formularzu, jak mogę to zrealizować?
Go to the top of the page
+Quote Post
kamil4u
post 21.04.2012, 21:32:13
Post #9





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Zapisz sobie tę wartość w polu: <input type="hidden">. Wygeneruj to pole czy to przez PHP czy przez JS.

Ew. wyślij ten drugi formularz na: action="moja-strona.php?zmienna=wartosc"


--------------------
Go to the top of the page
+Quote Post
Jokeer
post 3.05.2012, 14:57:02
Post #10





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 2.06.2008

Ostrzeżenie: (0%)
-----


Witam, mam do Was takie pytanie. W Mysql mam tabelę, w której przechowuję datę. Domyślnie ustawił sie format (RRRR-MM-DD). Natomiast potrzebuję zmienić format tej daty na DD.MM.RRRR. Kod w php, którym wstawiam datę do bazy to:
  1. $ins = @mysql_query("INSERT INTO towary SET main_id='$_GET[identyfikator]', nazwa='$_GET[nazwa]', ilosc='$_GET[ilosc]', data='$_GET[data]', cena='$_GET[cena]'");

gdzie $_GET[data] pobieram sobie z fomularza. Dodatkowo potrzebuje wykorzystać to pole do poźniejszego sortowania, także konwersja pola do zwykłego tekstu chyba niewiele mi pomoże.

Dziękuję za wszelką pomoc.
Go to the top of the page
+Quote Post
tehaha
post 3.05.2012, 16:38:31
Post #11





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


1. Datę trzyma się w bazie dokładnie w takim formacie i tego się nie zmienia, dopiero przy wyświetlaniu danych konwertujesz ją na taki format jaki Ci się podoba funkcją date() np. jeśli potrzebujesz tak format: DD.MM.RRRR to robisz:
  1. echo date('m.d.Y', strtotime($date));
gdzie zmienna $date zawiera właśnie datę pobraną z bazy, w Twoim przypadku konwersji dokonaj przed wstawieniem do zapytania czyl
  1. $date = date('Y-m-d', strtotime($_GET['data']));
. Trzymanie daty w postaci tekstowej nie ma sensu bo nie mógłbyś korzystać wtedy z wbudowanych funkcji mysql na datach
2. Poczytaj o sql injection bo Twoje zapytanie ma luki
3. Nie używaj @

Ten post edytował tehaha 3.05.2012, 16:39:08
Go to the top of the page
+Quote Post
Jokeer
post 4.05.2012, 08:36:21
Post #12





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 2.06.2008

Ostrzeżenie: (0%)
-----


Chłopaki mam do Was jeszcze takie pytanie. Chodzi o sortowanie, mam na stronie tabelkę, w której mam nazwę, ilość, datę i cenę. Chciałbym żeby po naciśnięciu którejś kolumny dane zostały posortowane właśnie wg tej kolumny? Myślałem, żeby po prostu zrobić odnośnik do innego pliku, w którym będę sobie wyświetał dane odpowiednio posortowane, ale musiałbym sporo rzeczy przesylać do tego pliku z poprzednich formularzy. Jest na to jakieś inne rozwiązanie? Czy może da się to zrobić w tym samym pliku?
Go to the top of the page
+Quote Post
r4xz
post 4.05.2012, 08:49:09
Post #13





Grupa: Zarejestrowani
Postów: 673
Pomógł: 106
Dołączył: 31.12.2008

Ostrzeżenie: (0%)
-----


google =>
1. http://www.ajaxdaddy.com/demo-table-sort.html
2. http://woork.blogspot.com/2008/02/sort-tab...using-ajax.html
...sporo tego wink.gif


--------------------
Go to the top of the page
+Quote Post
Jokeer
post 4.05.2012, 16:10:28
Post #14





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 2.06.2008

Ostrzeżenie: (0%)
-----


Panowie, zrobił się tu niezły skład moich pytań, więc jeszcze jedno smile.gif
Kiedy edytuje sobie w formularzu dane z bazy danych wszystko jest ok, do momentu kiedy w polu testowym mam dane z białym znakiem, w tym przypadku ze spacją, ponieważ wyświetla mi się tylko pierwszy człon do spacji. Jak mogę temu zaradzić?
Go to the top of the page
+Quote Post
kamil4u
post 5.05.2012, 19:33:49
Post #15





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Moim zdaniem lepiej zrobisz jak stworzysz nowy temat. Czasami inni użytkownicy mają podobny problem i łatwiej wtedy znaleźć coś w google smile.gif

Nie czytałem tematu jeszcze raz, dlatego zakładam, że to zupełnie nowy problem. Aby uzyskać rozwiązanie musisz napisać coś więcej i podać kod.


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 06:40