回声文本区域';用PHP实现s值
我想用PHP回声文本区域';用PHP实现s值,php,html,Php,Html,我想用PHPechotextarea值,所以我用HTML创建了一个简单的表单,在表单中包含名为b64_-place的textarea元素,然后input提交值 我检查是否设置了b64\u位置,如果设置了,我会回显textarea的值。但是我的程序甚至没有进入条件块,我试着调试,但它并没有什么作用 <!DOCTYPE html> <html lang="en"> <head> <title>Document
echo
textarea值,所以我用HTML创建了一个简单的表单,在表单中包含名为b64_-place
的textarea
元素,然后input
提交值
我检查是否设置了b64\u位置
,如果设置了,我会回显textarea
的值。但是我的程序甚至没有进入条件块,我试着调试,但它并没有什么作用
<!DOCTYPE html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<form action="index.php" method="GET">
<textarea name="b64_place" form="encode">Enter text here:</textarea>
<input type="submit" value="Encode">
</form>
<?php
if (isset($_GET['b64_place'])) {
$base64e_text = htmlspecialchars($_GET['b64_place']);
echo $base64e_text;
}
?>
</body>
</html>
文件
在此处输入文本:
您的文本区域包含一个属性,该属性用于定义此输入附加到的表单的id。因此,当您提交表单时,textarea不会与表单绑定,数据也不会发送
您可以向表单中添加id:
<!-- check this ----------------------v---------v -->
<form action="index.php" method="GET" id="encode">
<textarea name="b64_place" form="encode">Enter text here:</textarea>
<input type="submit" value="Encode">
</form>
在此处输入文本:
或者只需删除
form=“encode”
您的文本区域包含一个属性,该属性用于定义此输入附加到的表单的id。因此,当您提交表单时,textarea不会与表单绑定,数据也不会发送
您可以向表单中添加id:
<!-- check this ----------------------v---------v -->
<form action="index.php" method="GET" id="encode">
<textarea name="b64_place" form="encode">Enter text here:</textarea>
<input type="submit" value="Encode">
</form>
在此处输入文本:
或者根据高级SO成员的建议,删除
form=“encode”编辑,
我建议您将方法更改为POST的原因是GET方法的长度限制。在某些时候,您可能需要对非常大的数据进行编码,并且由于URL长度限制,可能会对其进行修剪。但是使用POST,你不必担心这个限制。
解决问题的步骤
如果表单和PHP代码位于同一个文件中,请将action=“index.PHP”更改为action=”“,并将method=“GET”更改为method=“POST”
在文本区域中,使用占位符告诉用户要输入什么,而不是将其写在标记之间
将$\u GET更改为$\u在代码中的任何位置发布
您可以将以下代码复制到index.php中,它将正常工作
<!DOCTYPE html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<form action="" method="POST">
<textarea name="b64_place" placeholder="Enter text here:"></textarea>
<input type="submit" value="Encode">
</form>
<?php
if (isset($_POST['b64_place'])) {
$base64e_text = htmlspecialchars($_POST['b64_place']);
echo $base64e_text;
}
?>
</body>
</html>
文件
根据高级SO成员的建议进行编辑,
我建议您将方法更改为POST的原因是GET方法的长度限制。在某些时候,您可能需要对非常大的数据进行编码,并且由于URL长度限制,可能会对其进行修剪。但是使用POST,你不必担心这个限制。
解决问题的步骤
如果表单和PHP代码位于同一个文件中,请将action=“index.PHP”更改为action=”“,并将method=“GET”更改为method=“POST”
在文本区域中,使用占位符告诉用户要输入什么,而不是将其写在标记之间
将$\u GET更改为$\u在代码中的任何位置发布
您可以将以下代码复制到index.php中,它将正常工作
<!DOCTYPE html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<form action="" method="POST">
<textarea name="b64_place" placeholder="Enter text here:"></textarea>
<input type="submit" value="Encode">
</form>
<?php
if (isset($_POST['b64_place'])) {
$base64e_text = htmlspecialchars($_POST['b64_place']);
echo $base64e_text;
}
?>
</body>
</html>
文件
Wow,我不知道php提供了一个alert()
函数;)@Nietthedark绝对有用comment@B001ᛦ 哦,是我的错。我本想把它回显出来的echo
应该可以正常工作。如果没有,请在浏览器中选中“查看源”。如果您在那里看到您的原始PHP,那么您没有运行PHP。您当前的代码应该可以工作。哇,我不知道PHP提供了一个alert()
函数;)@Nietthedark绝对有用comment@B001ᛦ 哦,是我的错。我本想把它回显出来的echo
应该可以正常工作。如果没有,请在浏览器中选中“查看源”。如果您在那里看到原始PHP,那么您就没有运行PHP。您当前的代码应该可以工作。有趣的是,我不知道您可以为表单指定特定元素,我一直认为form
属性只是用于提交按钮。我想不出这在任何情况下会有什么用处,但这很酷!好的,它可以被使用,例如在不同表单的表中,每个列都是一个表单,我不知道你可以为表单分配特定的元素,我一直认为表单属性只是用于提交按钮。我想不出这在任何情况下会有什么用处,但这很酷!嗯,它可以用在不同表单的表中,每个列都是一个表单,为什么OP应该将方法更改为POST
?您错过了最重要的部分,关于form=
attribute这些都是使用GET的正当理由。e、 g.如果使用GET,可以与其他用户一起搜索搜索结果。是的,当然也可以使用$\u GET。也许你可以告诉我,如果我不喜欢邮寄而不是索取。我使用POST,因为GET有长度限制,因为url长度限制。:-)我不要邮寄。我希望允许其他用户发送URL中包含文本的链接为什么OP应该将方法更改为POST
?您错过了最重要的部分,关于form=
attribute这些都是使用GET的正当理由。e、 g.如果使用GET,可以与其他用户一起搜索搜索结果。是的,当然也可以使用$\u GET。也许你可以告诉我,如果我不喜欢邮寄而不是索取。我使用POST,因为GET有长度限制,因为url长度限制。:-)我不要邮寄。我希望允许其他用户发送URL中包含文本的链接