开发者

How to use php variables in HTML form

开发者 https://www.devze.com 2023-04-05 11:38 出处:网络
I want to generate a simple html form and add some text box开发者_运维知识库 to it, then I want to define some php variables and use them as value for text boxes but when I try to use them it does not

I want to generate a simple html form and add some text box开发者_运维知识库 to it, then I want to define some php variables and use them as value for text boxes but when I try to use them it does not work and the value of variable would not be set for the text box. Would you please tell me about the correct syntax and the way for doing this

<?php
$foo = 123;
?>

<html>
    <head>
    </head>
    <body>
        <form Id='Form' Method='post' Action='http://example.com'>
            fooElement<input type='text' name='fooElement' value='<?= $foo ?>'/>
        </form>
    </body>
</html>

How can i set the value of foo variable as the value for foo element?


Are you sure that your short_open_tag is on?

If not try to use <php echo $foo;?>

You have missing ? symbol.

<?php
$foo="sample"
?>

My advice: Be attentive while writing code. Try to check your code once more for typos and etc. before asking on SO. And learn this basics


tag missing

<?php
$foo = 123;
?>


It depends on your server configuration. Sometimes short tags like <?php=$foo?> are allowed, sometimes they aren't. It's generally safer to just do <?php echo $foo; ?> instead.


echo $foo is not safe. it if contains ', anything after it will not be seen and will open doors for cross site scripting.

what I would suggest is to do small cleanup e.g. $foo = preg_replace("/'/", "&#39;", $foo), given you input the value as you mentioned above. e.g.

<input name='bar' value='<?=$foo?>'> 

I personally do not like this approach and would rather use templates or if you have to have html code in php then:

echo "<input name='bar' value='$foo'>";

as for text areas, do not forget to translate < and > to &lt; and &gt; to be on the safe side.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号