Jump to content
php.lv forumi

Formu elementu nosaukumi


Maris-S

Recommended Posts

Gribēju uzprasīt vai ir droši formas elementiem piešķirt nosaukumus sekojošā veidā:

 

<input type="text" name="names[]">
<select name="choses[]">...</select>
...

 

Situācija ir tāda, kad ar javascript var pievienot klāt neierobežotu skaitu šo elementu kopu, tādu kā jaunu ierakstu veidot. Rodas nedroša sajūta, vai nevarētu sanākt pie kādiem specifiskiem nosacījumiem, ka sūtot visus šos ierakstus php pusē masīviem sajauksies indeksi un atbilstoši pēc piemēra vienam konkrētajam names[] elementam būs atbilstoši nepareizais choses[] elements?

Link to comment
Share on other sites

Nu jā konkrētajā gadījumā tas ir nepieciešams. Piemēram ja ir liste/checkboxi un vajag atzīmēt vairākas iespējas. Indeksiem sajaukties nevajadzētu, tie ies 0,1,2...n bet papildus drošībai vai īpašiem gadījumiem, tu vari indeksus pats norādīt:

<input type="checkbox" name="chooses[23]" value="1" />
<input type="checkbox" name="chooses[742]" value="1" />

neesmu pārliecināts vai to var izdarīt ar <select>, jāpaguglē.

Un vēl neaizmirsti ka uz php galu tev atnāks tikai atzīmētās opcijas, ja neviena nav atzīmēta, būs tukšs masīvs.

Link to comment
Share on other sites

Tā, kā viņi pēc kārtas tiks postēti, tā arī atnāks php pusē - visi pēc kārtas, šajā gadījumā, ja reizē pievieno gan text, gan select, tad text un select pāru indexi būs vienādi.

 

Un jā, html masīvi strādā arī uz select.

Link to comment
Share on other sites

  • 3 weeks later...

Īstenībā tas nav gan droši. HTML standartā vispār ir aizliegts lietot [ un ] simbolus name saturā. Tātad browseris var rīkoties kā vien tīk (to kārtību), tāpat arī php pusē urļa parsēšana var notikt kā vien tīk. Tas nozīmē, ka sākot ar kādu browsera vai php versiju kkas var sākt strādāt savādāk nekā tu domā.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...