Atpakaļ uz pirmo lapu

laacz » 2004 » 2. novembris

Multiple selects

21:03 @ 2004-11-02 = 5 blabla  

Maza PHP funkcija, ka palīdz apiet problēmu, kura rodas, veidojot formas ar select elementu, kurā drīkst vienlaicīgi atzīmēt vairākus elementus.

Tā vietā, lai rakstītu <select name="sel[]">, kas neatbilst jums visiem tik mīļajām specifikācijām un rekomendācijām, ar šīs funkcijas palīdzību var rakstīt tā, kā visā normālajā pasaulē pieņemts — <select name="sel">.

Rezultātā tieši tāpat kā pirmajā gadījumā tiks iegūts masīvs $_POST['sel'], kurā tad arī tiks uzskaitīti visi elementi. Vienīgais mīnuss, kurš pastāv, ir tas, ka lai servera galā sekmīgi to visu apstrādātu, nāksies izmantot mazu viltību, jo, gadījienā, ja tiks atzīmēts tikai viens no elementiem, nekāds masīvs neizveidosies (kas loģiski):

$_POST = processRawPostData();

if (isset($_POST['sel']) && !is_array($_POST['sel'])) {
    $_POST['sel'] = Array($_POST['sel']);
}

P.S. Šitais nestrādās, izmantojot formu ar enctype="multipart/form–data".

P.P.S. Un vēl. Ja mēs pieminam arīdzan WML, tad šeit multiplie selekti tiek padoti kā sel=val1;val2;val3

1 es @ 22:32 (2004. gada 02. novembris)

Un patīk cilvēkiem sarežģīt sev dzīvi :))

2 anonīmi @ 22:59 (2004. gada 02. novembris)

vietās, kur specene ir stulba, es viņu pārkāpju. bez sirdsapziņas pārmetumiem.

3 laacz @ 23:05 (2004. gada 02. novembris)

es: manuprāt es to esmu atvieglojis :)

anonīmi: dotajā gadījumā PHP metode ir stulba un nepārdomāta :)

4 Delfins @ 09:28 (2004. gada 03. novembris)

lācz, ja parādas šitādi PS un PPS, tad labak to nelietot. un palikt pie vecām metodēm.

5 laacz @ 09:30 (2004. gada 03. novembris)

Delfins: Tas nav tik viennozīmīgi.

Kā tu saucies:
Tava e-pasta adresīte:
(nevienam netiks rādīta, vai dota; pat pie komentāra ne)
Ko teiksi?
FYI
* Formatēšana: iekļaujot tekstu no abām pusēm iekā '//', tas iznāks kursīvā: //teksts// (teksts), bet treknu tekstu var dabūt ar '**' katrā pusē: **teksts** (teksts), savukārt pasvītrotu ar '__': __teksts__ (teksts).
* Enteri tiek automātiski pārtaisīti par enteriem. Jebkurš HTML (izņemot <BR.*>) tiek parādīts, kā ievadīts (ne HTML'iski)
* E-pastu var vadīt droši iekšā, ja ir bailes no spambotiem. Tas tiek aizsargāts no jamajiem.
* Jebkurš url'is (www.kaka.com, http://kaka.com/, …) tiek automātiski pārtaisīts par spiežamu prieku (www.kaka.com, http://kaka.com/, …)
* Ko nozīmē 'detransliterēšana'? Manuprāt sen jau ir laiks sākt rakstīt nevis translitā (aaboljiishi), bet gan normāliem letiņu burtiem (āboļīši). Tad nu tieši to arī dara attiecīgā poga - pārveido tekstu no translita uz parastu. Gadās kļūmītes, bet labāk šitā nekā nekā.
 

Valid CSS! Valid XHTML 1.0 Transitional! Valid RSS! Valid Atom!
Tātad tā. Kopīraita notice. Viss materiāls, kas atrodams šajā saitā nedrīkst tikt izplatīts, kopēts, jebkādi citādi reproducēts vai izmantots bez manas (laacz) rakstiskas atļaujas. šīs tiesības man laipni piedāvā Autortiesību Likums.
Jebkura informācija, kuru kāds labprātīgi publicē šajā saitā (piemēram, komentāri), pieder tās autoram. Taču, ievietojot infromāciju šajā saitā, tās autors sniedz saita īpašniekam tiesības to daļēji vai pilnā apjomā lietot, izplatīt, reproducēt, modificēt, adaptēt, publicēt, tulkot, publiski demonstrēt. Saita īpašnieks ir tiesīgs jebkuru komentāru jebkurā brīdī dzēst, vai modificēt.
© 1996 — 2025 laacz. Visas tiesības… nu jūs jau zināt, kur.
Spēcināts ar SPP (S Pivom Potjaņet) v2.0b (code name Marasmus)
Hostingu laipni piedāvā DEAC.

laacz blog activity

Top.LV

 

Lapa izlīdusi no servera dzīlēm 0.03741 sekundē(s)