How to give new life into a five years old, simple but reliable PHP form?

Posted by Sam on Stack Overflow See other posts from Stack Overflow or by Sam
Published on 2011-01-13T16:33:59Z Indexed on 2011/01/13 16:53 UTC
Read the original article Hit count: 165

Filed under:
|
|
|
|

Hi all. I have a script in php 5.2. I want to use a simple form. I found something a programmer made for me about 5 years ago. When I use it, PHP outputs an error now unless I set register_long_arrays = On, then it works fine.

On the PHP website, however, it says:

Warning This feature has been DEPRECATED as of PHP 5.3.0. Relying on this feature is highly discouraged. It's recommended to turn them off, for performance reasons. Instead, use the superglobal arrays, like $_GET.

Should I listen to PHP's warning, or just enable the option and keep using my old form happily? If the former, then how/where do I change this simple form, so it does not rely on the deprecated setting? Your answer is much appreciated.

form.htm

<html><body>
<form method="POST" action="form_sent.php"> 
  ...   
</form>
</body></html>

form_sent.php

<html><body>
<?php
$email = $HTTP_POST_VARS[email];
$mailto = "[email protected]";
$mailsubj = "A Form was Sent from Website!";
$mailhead = "From: $email\n";
reset ($HTTP_POST_VARS);
$mailbody = "Values submitted from web site form:\n";
while (list($key, $val) = each ($HTTP_POST_VARS)){$mailbody .= "$key : $val\n";}
if (!eregi("\n",$HTTP_POST_VARS[email])) {
   mail($mailto, $mailsubj, $mailbody, $mailhead); }
?>

<b>Form Sent. Thank you.</b>
</body></html>

© Stack Overflow or respective owner

Related posts about php

Related posts about variables