Re: Submitting form from <a href
| From: | Dave W | Date: | Mon, 17 Jul 2006 14:33:30 +0000 |
| Subject: | Re: Submitting form from <a href | ||
| References: | 1 2 | Groups: | php.db |
| Request: | Send a blank email to php-db+get-42215@lists.php.net to get a copy of this message | ||
The problem with GET is that a user that looks at the source code of the
html can easily just input what they want for the argument. Can you say SQL
injection?
On 7/17/06, Sean Mumford <smumford@esitemarketing.com> wrote:
Couldn't you achieve the same effect without javascript by simply using GET values instead of post? As in each hyperlink would say something like <a href="search.php?letter=a">A</a> <a href="search.php?letter=b">B</a>, although perhaps you're trying to intentionally avoid using GET as to not clutter up their browser history. .. -----Original Message----- From: Andrew Kreps [mailto:andrew.kreps@gmail.com] Sent: Friday, July 14, 2006 7:15 PM To: Skip Evans Cc: Php-Db Subject: Re: [PHP-DB] Submitting form from <a href Skip, Just so you know, there is a general PHP user's list available for just such a request. It's rather high-traffic, so be warned. Now then, on to the problem. I believe I've figured out a way to make this happen. I've only tested it on IE 6 and Firefox 1.5.0.4, so your browser compatibility may vary. I'll just post the scripts I used to test it here and you can take what you need and run with it. Here is the script that my form is built in: ---------- <html>-- Dave W<head> <script language="Javascript"> function submitForm (letter) { document.search.letter.value = letter; //Here's where we're setting the form value 'letter' to the letter the user clicked on.document.search.submit(); // Then,submit the form.} </script> </head> <body> <form name="search" method="POST"action="testingLinkSubmit.php"><input type="hidden" name="letter" value=""> <!--If this isn't here, the Javascript letter.value code won't work, since form.letter doesn't exist. --><input type="checkbox" name="checky"/> Search allcampuses<br><? for ($i = 65; $i <= 90; $i++) { $letter = chr($i); print "<ahref=\"javascript:submitForm('$letter')\">$letter</a> ";} ?> </form> </body></html> ------------- The receiving end of the form looks much as you might expect, it just parses the form values: -------------- <html> <body> <? if (isset($_POST["checky"])) {print "Checkbox value is: True<br>\n";} else {print "Checkbox value is: False<br>\n"; }print "Letter: " . $_POST["letter"]; ?> </body> </html> ------------ And there you go! Let me know if you have any problems. On 7/14/06, Skip Evans <skip@bigskypenguin.com> wrote: Hey all, This is not database related, but I get the impression this list entertains general PHP questions? If I'm mistaken, flame away. I need submit a form when a hyper link is pressed, and have been trying all manner of onlicks, etc, but have been unable to hit the right combination. Here's the scenario: I have the alphabet in hyper links with a check box below: <form...> A B C D E F G H I J K..... [] check for all campuses </form> What needs to happen is that when they click a letter, which is a <a href=...> now, it submits the check box value as well, to be read through $_POST on the receiving end. And of course I need to know what letter was click, this I was trying to get through a $_REQUEST var, but was not able to do so. Any tips would be monstrously appreciated. -- Skip Evans Big Sky Penguin, LLC 61 W Broadway Butte, Montana 59701 406-782-2240 -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php