繁体   English   中英

如何在我的 HTML 代码中检索 PHP 变量?

[英]How do I retrieve a PHP variable in my HTML code?

我从我的 HTML 表单提交中调用了 PHP 脚本。

Then I process the values retrieved from this HTML form in the PHP script and now I want to display these values in another HTML form that I am calling from this PHP script. 如何检索此变量?

注意:我尝试了echo ,但我认为我实际上想以表单 (HTML) 显示此值,而不是在 PHP 标记中再次破坏它。

我不确定您所说的“不再用 PHP 标签破坏它”是什么意思。 HTML 自身无法访问 PHP 变量。 这是因为 PHP 是一种服务器端语言,而 HTML 是一种客户端语言。 但这是打印从表单检索到的 php 变量的最简单方法。

<form>
    <p>Your name: <?php echo $_POST['name'] ?></p>
</form>

这是假设有一个表单使用 POST 提交了一个名为“名称”的字段。

您可以在文件顶部的 php 脚本中处理名称,然后在打印 html 时简单地回显它。 这样,您不会有太多的 php 代码与 HTML 混合(这使它看起来更干净)。

一旦你得到 PHP 脚本中的值,你是在调用一个新脚本吗? 如果是这样,您可能希望将值保存在$_SESSION["varible_name"]中。 如果没有,你只需要回应它。

这取决于您如何通过$_POST或通过$_GET访问表单数据。 为简单起见,我假设您使用$_GET并修改此示例以更清晰。

因此,假设您在welcome.php 上托管了一个表单:

<form action="welcome.php" method="get">
Name: <input type="text" name="fname" />
Age: <input type="text" name="age" />
<input type="submit" />
</form>

现在结果会返回到同一个页面,所以你要修改页面说:

<form action="welcome.php" method="get">
Name: <input type="text" name="fname" value="<?php echo $_GET["fname"]; ?>"/>
Age: <input type="text" name="age" value="<?php echo $_GET["age"]; ?>" />
<input type="submit" />
</form>

虽然你会注意到我们使用的是同一个页面,而且我们只能有一个版本的页面,所以如果我们的变量已经设置,我们想要渲染。

if (isset($_GET["fname"])){
//code to print second form
}
else{
//code to print first form
}

或者,以另一种方式(使用三元运算符):

<form action="welcome.php" method="get">
Name: <input type="text" name="fname" value="<?php echo ((isset($_GET["fname"]))?$_GET["fname"]:""); ?>"/>
Age: <input type="text" name="age" value="<?php echo ((isset($_GET["age"]))?$_GET["age"]:""); ?>" />
<input type="submit" />
</form>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM