HTTP_POST_VARS and eval?

From: Date: Fri, 16 Nov 2001 22:28:23 +0000
Subject: HTTP_POST_VARS and eval?
Groups: php.general 
Request: Send a blank email to php-general+get-74805@lists.php.net to get a copy of this message
Hey List- Working on a program and I seem to have run into a problem with HTTP_POST_VARS. Are the HTTP_VARS considered "special"? Here is what I am doing, reading in from a file into an array and then grabbing each line and looking for ]string[ and replacing that with $HTTP_POST_VARS["string"] The first echo prints out the lines correctly, but the echo after the eval prints out the same lines. My error log shows this: PHP Parse error: parse error, expecting T_STRING' or T_VARIABLE' or `T_NUM_STRING' in /data/www/webpages/test.rhavenn.net/public_html/formmail/formmail.php(164) : eval()'d code on line 1 So, its having problems doing an eval on the HTTP_POST? If I replace the HTTP_POST stuff with just $\\1 and then define $string = $HTTP_POST_VARS["string"] it works just fine, but I can't do this since I don't know what string is going to be, just that it is between ] [ chars and there can be multiple ] [ on one line. Any thoughts? Code is below. //Read the array $form_data = ""; for($i=0; $i < count($filearr); $i++){ $line = $filearr[$i]; //Strip the ] [ from around the variables so they will be interpreted $line = eregi_replace("\]([^\[]+)\[", "\$HTTP_POST_VARS['\\1']", $line); echo "Line: $line<BR>"; //eval the variables from $line into themselves and they become literal eval ("\$line = \"$line\";"); echo "Lineafterwards: $line<BR>\n"; //Write the line back into a single variable $form_data = $form_data . $line; } exit; Thanks! Henrik -- Henrik Hudson lists@rhavenn.net

« previous php.general (#74805) next »