Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > pl.comp.lang.php > #15272 > unrolled thread

Panie Lemat pomożesz?

Started byw systemie siła 'PO/EU <NOSPAMtestowanije@go2.pl>
First post2016-11-19 18:00 +0100
Last post2016-11-23 21:29 -0800
Articles 7 — 4 participants

Back to article view | Back to pl.comp.lang.php


Contents

  Panie Lemat pomożesz? w systemie siła 'PO/EU <NOSPAMtestowanije@go2.pl> - 2016-11-19 18:00 +0100
    Re: Panie Lemat pomożesz? Lemat <#@lemat.priv.pl> - 2016-11-19 18:27 +0100
      Re: Panie Lemat pomożesz? w systemie siła 'PO/EU <NOSPAMtestowanije@go2.pl> - 2016-11-22 16:29 +0100
        Re: Panie Lemat pomożesz? Lemat <#@lemat.priv.pl> - 2016-11-22 18:29 +0100
          Re: Panie Lemat pomożesz? niepełnosprawny intelektualnie 'POPIS/EU <NOSPAMtestowanije@go2.pl> - 2016-11-23 18:01 +0100
            Re: Panie Lemat pomożesz? Lemat <#@lemat.priv.pl> - 2016-11-23 18:12 +0100
              Re: Panie Lemat pomożesz? Rafal Podsiadly <spinacz24@gmail.com> - 2016-11-23 21:29 -0800

#15272 — Panie Lemat pomożesz?

Fromw systemie siła 'PO/EU <NOSPAMtestowanije@go2.pl>
Date2016-11-19 18:00 +0100
SubjectPanie Lemat pomożesz?
Message-ID<o0q0ge$f00$1@node2.news.atman.pl>
zakładając, że mamy coś takiego:

pis dyma swoich wyborców 1 (*)
EDYTUJ

pis dyma swoich wyborców 2 (*)
EDYTUJ

pis dyma swoich wyborców 3 (*)
EDYTUJ

UKRYJ

czy da się zrobić taki formularz?

czyli editem edytujemy jeden wpis,
ale mamy mozliwość zaznaczenia jakiegoś znacznika ukrycia który 
modyfikował by zgodnie z wyborem wszystkie wpisy?

jak to zrobić?

[toc] | [next] | [standalone]


#15273

FromLemat <#@lemat.priv.pl>
Date2016-11-19 18:27 +0100
Message-ID<58308b69$0$5143$65785112@news.neostrada.pl>
In reply to#15272
W dniu 19.11.2016 o 18:00, w systemie siła 'PO/EU pisze:
> zakładając, że mamy coś takiego:
>
> pis dyma swoich wyborców 1 (*)
> EDYTUJ
>
> pis dyma swoich wyborców 2 (*)
> EDYTUJ
>
> pis dyma swoich wyborców 3 (*)
> EDYTUJ
>
> UKRYJ
>
> czy da się zrobić taki formularz?
>
> czyli editem edytujemy jeden wpis,
>
> jak to zrobić?

ale co to ma być?
<input type="radio">
czy
<input type="checkbox">
czy
<input type="text">

a "edytuj" to co to jest?
<input type="submit">
?

 > ale mamy mozliwość zaznaczenia jakiegoś znacznika ukrycia który
 > modyfikował by zgodnie z wyborem wszystkie wpisy?

JavaScript-em:
zaznacz_wszystko() {
document.getElementById("id of checkbox").checked = true;
...
}

-- 
Pozdrawiam
Lemat

[toc] | [prev] | [next] | [standalone]


#15274

Fromw systemie siła 'PO/EU <NOSPAMtestowanije@go2.pl>
Date2016-11-22 16:29 +0100
Message-ID<o11o8j$u3a$1@node2.news.atman.pl>
In reply to#15273
dzięki za zainteresowanie

chodzi mi o takie jakby zagnieżdżenie formularzy

czyli mamy jeden formularz zewnętrzny obejmujący wpisy na całej stronie,
a drugi formularz wewnętrzny obejmujący tylko jeden wpis na stronie - i 
takich N razy

[toc] | [prev] | [next] | [standalone]


#15275

FromLemat <#@lemat.priv.pl>
Date2016-11-22 18:29 +0100
Message-ID<58348076$0$640$65785112@news.neostrada.pl>
In reply to#15274
W dniu 22.11.2016 o 16:29, w systemie siła 'PO/EU pisze:
> dzięki za zainteresowanie
>
> chodzi mi o takie jakby zagnieżdżenie formularzy
>
> czyli mamy jeden formularz zewnętrzny obejmujący wpisy na całej stronie,
> a drugi formularz wewnętrzny obejmujący tylko jeden wpis na stronie - i
> takich N razy

<form>ularzy się nie zagnieżdża.

Posłużę się przykładem z twojej ulubionej dziedziny. Wyobraź sobie 
arkusz excela w kolumnami: imię, nazwisko, przynależność do Partii.
Arkusz ma zatem 3 kolumny i N wierszy.

Standardowo <form> otacza cały arkusz przesyłając do skryptu PHP 
wszystkie pola czyli 3*N zmiennych.

Jeżeli otoczyć <form>ularzami każdy wiersz osobno to masz N formularzy - 
o ile dobrze pamiętam submit jednego z nich przesyła do skryptu PHP 
tylko pola w nim zawarte - czyli 3 sztuki.
Ale każdy submit powoduje przeładowanie strony i utratę zmian 
przeprowadzonych w innych wierszach.
Aby wiedzieć który wiersz został przesłany daje się jakiegoś hiddena z 
unikalnym identyfikatorem.

Można jednak przechwycić JavaScriptem zdarzenie onsubmit formularza, 
zapakować hiddena + 3 zmienne do struktury AJAXowej, wysłać do skryptu 
PHP, skrypt PHP zwraca kawałek tekstu, który AJAX odbiera i można z nim 
coś zrobić - na przykład napis "dupa" jeżeli wybrana Partia nie jest 
jedyną słuszną. Funkcja obsługująca onsubmit zwraca false zapobiegając 
przeładowaniu strony i wysłaniu formularza tradycyjną drogą.

Można też Javascriptem przechwycić zdarzenia onblur lub onchange 
konkretnego inputa. Do inputa musiałbyś dodawać niestandardowe atrybuty 
pozwalające zidentyfikować wiersz oraz kolumnę. Te atrybuty oraz wartość 
pola pakujesz w strukturę AJAXową, wysyłasz do skryptu PHP, skrypt PHP 
odpowiada tekstem, który możesz jakoś wykorzystać.


Do poduszki:
http://www.w3schools.com/jsref/event_onsubmit.asp
http://www.w3schools.com/jsref/event_onblur.asp
http://www.w3schools.com/jsref/event_onchange.asp
http://www.w3schools.com/jsref/dom_obj_event.asp
http://www.w3schools.com/xml/ajax_intro.asp
http://www.w3schools.com/tags/att_global_data.asp

PS. napis "dupa" stosuję osobiście kiedy debuguję skrypty - więc nie ma 
się czego wstydzić.
-- 
Pozdrawiam
Lemat

[toc] | [prev] | [next] | [standalone]


#15276

Fromniepełnosprawny intelektualnie 'POPIS/EU <NOSPAMtestowanije@go2.pl>
Date2016-11-23 18:01 +0100
Message-ID<o14i23$jqf$3@node2.news.atman.pl>
In reply to#15275
dzięki, trochę minie zanim ogarnę...

a tak mi się skojarzyło, można zrobić tak, że wewnętrzny form przesyła 
jedno pole, a zewnętrzny wszystkie?

[toc] | [prev] | [next] | [standalone]


#15277

FromLemat <#@lemat.priv.pl>
Date2016-11-23 18:12 +0100
Message-ID<5835cde3$0$5160$65785112@news.neostrada.pl>
In reply to#15276
W dniu 23.11.2016 o 18:01, niepełnosprawny intelektualnie 'POPIS/EU pisze:
> dzięki, trochę minie zanim ogarnę...
>
> a tak mi się skojarzyło, można zrobić tak, że wewnętrzny form przesyła
> jedno pole, a zewnętrzny wszystkie?

<form>ularzy się nie zagnieżdża.

-- 
Pozdrawiam
Lemat

[toc] | [prev] | [next] | [standalone]


#15278

FromRafal Podsiadly <spinacz24@gmail.com>
Date2016-11-23 21:29 -0800
Message-ID<57327351-ab12-4179-8e1c-ddd8752ae886@googlegroups.com>
In reply to#15277
tak mozna w polu w zdarzniu submit definiujesz pola ktore wysylasz. ale czy button z ajax nie byl by lepszy. ajax http request poczytaj. w takim przypadku tez jest bez sensu zagniezdzac. wystarczy po prostu wiele przyciskow wyslij. a wedlug logiki html jeden formulaz w drugim moga powodowac bledy w sytuacji jak ktos wylaczy javascript

[toc] | [prev] | [standalone]


Back to top | Article view | pl.comp.lang.php


csiph-web