【问题标题】:How to pass text area values from one page to another in PHP如何在 PHP 中将文本区域值从一页传递到另一页
【发布时间】:2025-11-26 03:25:02
【问题描述】:

我有一个页面page1.php(比如说),这个页面上有一些文本区域框,例如 -

<form name="viewRun" action="/auto/page2.php" method="post">
    <td><textarea name="qatxt1 " rows="2" cols="20"></textarea></td>
    <td><textarea name="autotxt1 " rows="2" cols="20"></textarea></td>
    <input type="submit" name="save" value='Submit' style="background-color:#49743D;font-weight:bold;color:#ffffff;">

现在,用户填充 page1.php 上的文本区域框并单击Submit 按钮,page2.php 被加载。问题是我无法检索用户在 page2 上的这些文本区域框中放置的 cmets。 php。我在 page2.php 上有以下代码 -

<?php 
$varTemp= $_POST["qatxt1 "];
?>

$varTemp 只是空白。

我们一如既往地非常感谢您的帮助!!

【问题讨论】:

  • 首先,您可以从您的操作 URL 中删除 ?。这是不必要的。其次,var_dump($_POST) 为你带来了什么?
  • 我知道 HTML 只是一个例子,但你不能像这样在 &lt;form&gt; 中包含 &lt;td&gt;s。
  • 要扩展@Rocket 的评论,如果您不显示表格数据,请不要使用表格。这是可怕的做法。而是使用 CSS(层叠样式表)。
  • @Rocket, Matt - var_dump($_POST) 返回 array(21) { ["qatxt1 "]=&gt; string(0) "" 。实际上,Page1.php 显示了表格中的一些数据,然后我添加了两个文本区域列。我需要触发更新查询来更新文本区域中的 cmets。这就是你看到 元素的原因。

标签: php post textarea


【解决方案1】:

名称中不能有空格。

<textarea name="qatxt1 " rows="2" cols="20"></textarea>

应该是:

<textarea name="qatxt1" rows="2" cols="20"></textarea>

然后你可以这样读:

$varTemp = $_POST["qatxt1"];

参考:http://www.w3.org/TR/html4/types.html#type-cdata

ID 和 NAME 标记必须以字母 ([A-Za-z]) 开头,后跟任意数量的字母、数字 ([0-9])、连字符 ("-")、下划线 (" _")、冒号 (":") 和句点 (".")。

【讨论】: