我正在学习PHP,并且正在从HTML表单中发布变量
下面是我的代码:
<html>
<head>
<title>Welcome to PHP Products</title>
</head>
<body>
<?php
$txt1=$_POST["product_form_no"];
$txt2=$_POST["product_form_name"];
$txt3=$_POST["product_form_desc"];
<h1>The Entered Product</h1>
<p>Product No</p>echo $txt1;
<p>Product Name</p>echo $txt2;
<p>Product Desc</p>echo $txt3;
?>
</body>
</html>
我收到以下错误
解析错误:语法错误,第 12 行 C:\wamp\www\product_entered_list.php 中意外的"<"
任何帮助都会有所帮助!!
<?php
$txt1=$_POST["product_form_no"];
$txt2=$_POST["product_form_name"];
$txt3=$_POST["product_form_desc"];
?> <---missing
如果没有这个结束?>
,当达到<h1
>时,你仍然处于"PHP模式",PHP试图将其解释为PHP代码,而不是HTML。
这意味着您还必须修改回声线:
<p>Product No</p><?php echo $txt1; ?>
^^^^^^ ^^^
尝试在"输入的产品"之前关闭 php 标签,之后,为每个回显打开 php 标签并关闭它们。代码将如下所示:
<?php
$txt1=$_POST["product_form_no"];
$txt2=$_POST["product_form_name"];
$txt3=$_POST["product_form_desc"];
?>
<h1>The Entered Product</h1>
<p>Product No</p><?php echo $txt1; ?>
<p>Product Name</p><?php echo $txt2; ?>
<p>Product Desc</p><?php echo $txt3; ?>
告诉我它是否有效。
试试这个...在编写 HTML 之前,您需要使用结束 PHP 标记。
对于您的 POST 变量部分以及回显 3 个变量值的位置都是如此
<html>
<head>
<title>Welcome to PHP Products</title>
</head>
<body>
<?php
$txt1=$_POST["product_form_no"];
$txt2=$_POST["product_form_name"];
$txt3=$_POST["product_form_desc"];
?>
<h1>The Entered Product</h1>
<p>Product No</p> <?php echo $txt1; ?>
<p>Product Name</p><?php echo $txt2; ?>
<p>Product Desc</p><?php echo $txt3; ?>
</body>
</html>
你的问题就在这里:
$txt3=$_POST["product_form_desc"];
<h1>The Entered Product</h1>
<p>Product No</p>echo $txt1;
在PHP的中间,你开始使用HTML。您必须首先关闭 PHP 标记,或使用 echo 打印出 HTML。
执行以下任一操作:
$txt3=$_POST["product_form_desc"];
?>
<h1>The Entered Product</h1>
<p>Product No</p><?= $txt1 ?>
或者这个:
$txt3=$_POST["product_form_desc"];
echo"<h1>The Entered Product</h1>";
echo "<p>Product No</p>" . $txt1;
缺少很多标签。在变量赋值后关闭一个,在回声周围关闭和打开。我建议退后一步,从PHP基础知识开始。
您在<?php ?
>标记之间键入了 HTML,也称为语法错误 :))
将来请确保使用PHP的echo函数来正确显示输出。
echo "<h1>The Entered Product</h1>";
echo "<p>Product No " . $txt1 . "</p>";
echo "<p>Product Name</p>" . $txt2;
echo "<p>Product Desc</p>" . $txt3;
附带说明一下,如果您正在学习并且脚本不会公开,则可以直接从表单在页面上显示数据。但是,如果您打算进行任何认真的编码(即公众将使用脚本),您可能需要阅读有关表单安全性的信息。
在你的代码中,在第 6 行 PHP 代码开始,在第 11 行 HTML 代码开始,php 标签没有关闭,因此代码也被解释。因此,第 11 行开头的"<"会导致致命错误,因为它无法识别 PHP 代码。
要在 PHP 中合并 HTML 代码,您可以使用 PHP 开始和结束标记将 HTML 和 PHP 代码合并到一个文件中。或者你可以使用引号 " 将 html 代码作为字符串发送到 PHP 并回显它。
以下是方法 1:
<html>
<head>
<title>Welcome to PHP Products</title>
</head>
<body>
<?php
$txt1=$_POST["product_form_no"];
$txt2=$_POST["product_form_name"];
$txt3=$_POST["product_form_desc"];
echo "
<h1>The Entered Product</h1>
<p>Product No</p>$txt1
<p>Product Name</p>$txt2
<p>Product Desc</p>$txt3";
?>
</body>
</html>
方法2:
<html>
<head>
<title>Welcome to PHP Products</title>
</head>
<body>
<?php
$txt1=$_POST["product_form_no"];
$txt2=$_POST["product_form_name"];
$txt3=$_POST["product_form_desc"];
?>
<h1>The Entered Product</h1>
<p>Product No</p><?php echo $txt1;?>
<p>Product Name</p><?php echo$txt2;?>
<p>Product Desc</p><?php echo $txt3;?>
</body>
</html>