Re: Bug #13718 Updated: form elements with same name problem

From: Date: Thu, 25 Oct 2001 04:44:06 +0000
Subject: Re: Bug #13718 Updated: form elements with same name problem
References: 1 2  Groups: php.dev 
Request: Send a blank email to php-dev+get-68986@lists.php.net to get a copy of this message
I can't reproduce this with neither with current CVS nor with 4.0.6. Can you post a small reproduceable example ? - Markus ps: no idea, php.bugs won't accept my cvs user/pass On Wed, Oct 24, 2001 at 10:58:57PM -0000, jone1941@yahoo.com wrote : > ID: 13718 > User updated by: jone1941@yahoo.com > Reported By: jone1941@yahoo.com > Status: Bogus > Bug Type: Feature/Change Request > Operating System: All > PHP Version: 4.0.6 > New Comment: > > I'm sorry to keep bringing this issue to light, but this actually would mimic that of your > existing functionality. > > If you name an element in a form with a [] that does not garuntee that the variable on the > other end will be an array. If there is only one element posted with that name followed by [] it > will end up as a standard variable. > > So, I again make the plea: > If you have more than one element with the same name with or without a [] it will come out an > array. If you have one element with or without a [] it will come out the other end as a single > variable. > > It is possible that you actually intended for the single element with [] to come out as an > array, if that is the case, I guess you should consider this a bug report for the functionality of > trailing [] in forms. > > Previous Comments: > ------------------------------------------------------------------------ > > [2001-10-18 11:38:37] jone1941@yahoo.com > > Oh, I'm sorry, I missunderstood you. I understand what you are getting at, ambiguity can > be a problem. I guess I'll just deal with using the suggestion of indexing on a string in > javascript. Thank you for all your help. > > ------------------------------------------------------------------------ > > [2001-10-18 11:33:49] hholzgra@php.net > > no, i didn't ;) > > i just tried to describe what would happen > *if* we would follow your suggestion > and that it is a not so good idea after all > > (although we definetly should have a look > at the [] syntax regarding standard conformance) > > ------------------------------------------------------------------------ > > [2001-10-18 10:57:57] jone1941@yahoo.com > > wow, I just noticed that you are suggesting that php actually generate an array! I posted two > example html files, that clearly show that you are wrong. PHP always treats them as a single > variable, no matter how many are actually set. > > ------------------------------------------------------------------------ > > [2001-10-18 10:54:37] jone1941@yahoo.com > > sorry, I refreshed the page, and it reposted. Thank you for your help, I hope that you will > consider my suggestion for future releases. > > ------------------------------------------------------------------------ > > [2001-10-18 10:53:44] jone1941@yahoo.com > > I do understand that if you were in the middle of a php script, this would be a simple > reassigning of the variable. However, this is a preprocessor command, and thus should be handled a > little differently. > > Adding a "[]" at the tail of a variable and having it come out as an array on the > other end seems a like a trick. It has its uses I'll give you that, but if you look at my > suggestion you will realize that it would be a nice feature. You guys seem to have take the time to > make sure that elements with "[]" get properly shoved into arrays, so why not this. > > This is a fairly common situation in html forms. Especially if you are dynamically generating > them. > > What this really comes down to is, are you willing to overlook the fact that something like > this does sort of already exist, in favor of another form of functionality? > > There is one other issue. If you use the variable names that you suggest, it breaks > javascript. ie: > > <html> > <body> > <form name="form1" action="" method="post"> > Baseball: > <input type="checkbox" name="interest[]" value="baseball"> > <br> > Teams: > <input type="text" name="teams[]" size="30" > onFocus="form1.interest[0].checked=1"> > <br> > <input type="submit" value="submit"> > </form> > </body> > </html> > > will cause an error, because you don't define arrays in javascript this way. I realize > that this seems like a bug in javascript, but actually it isn't. The html 4.01 specification > clearly states that: > > "ID and NAME tokens must begin with a letter ([A-Za-z]) and may be followed by any number > of letters, digits ([0-9]), hyphens ("-"), underscores ("_"), colons > (":"), and periods (".")." > > Note: this does not suggest that you can add "[" or "]". So, in essence > you are violating the html specification. > > If you still do not agree that this would only improve php, I will stop bothering you. > > ------------------------------------------------------------------------ > > The remainder of the comments for this report are too long. To view > the rest of the comments, please view the bug report online at > http://bugs.php.net/?id=13718 > > > Edit this bug report at > http://bugs.php.net/?id=13718&edit=1 > > > -- > PHP Development Mailing List <http://www.php.net/> > To unsubscribe, e-mail: php-dev-unsubscribe@lists.php.net > For additional commands, e-mail: php-dev-help@lists.php.net > To contact the list administrators, e-mail: php-list-admin@lists.php.net -- Markus Fischer, http://guru.josefine.at/~mfischer/ EMail: mfischer@guru.josefine.at PGP Public Key: http://guru.josefine.at/~mfischer/C2272BD0.asc PGP Fingerprint: D3B0 DD4F E12B F911 3CE1 C2B5 D674 B445 C227 2BD0 -All your scripts are belong to Zend-

« previous php.dev (#68986) next »