Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 输出输入的窗体_Php_Javascript_Forms_Templates - Fatal编程技术网

Php 输出输入的窗体

Php 输出输入的窗体,php,javascript,forms,templates,Php,Javascript,Forms,Templates,我一辈子都找不到一个不通过电子邮件发送你提交的结果的表格 我正在寻找一个表单,我可以让用户输入简单的数据,然后以不同的方式向他们吐出。如果他们第一个和最后一个提交,我会吐出来,FirstLast@domain.com. 我愿意手动搜索代码来实现这一点,但是我找不到一个简单的表单来实现这一点 编辑:PHP或类似的简单语言。我以前从未接触过.NET。您使用的语言/平台/环境是什么 我想你可能正在寻找一个托管脚本或webform(我想人们会以这种方式托管web-to-mail脚本),但我怀疑是否会有这

我一辈子都找不到一个不通过电子邮件发送你提交的结果的表格

我正在寻找一个表单,我可以让用户输入简单的数据,然后以不同的方式向他们吐出。如果他们第一个和最后一个提交,我会吐出来,FirstLast@domain.com. 我愿意手动搜索代码来实现这一点,但是我找不到一个简单的表单来实现这一点


编辑:PHP或类似的简单语言。我以前从未接触过.NET。

您使用的语言/平台/环境是什么

我想你可能正在寻找一个托管脚本或webform(我想人们会以这种方式托管web-to-mail脚本),但我怀疑是否会有这样的一个


但是,如果您有一个特定的框架可以使用,例如PHP或.net,请更新问题并让我们知道是哪个。

简单的东西甚至不需要服务器端支持

<form onsubmit="magic(this);return false">
    <p><label>First <input name=first/></label>
    <p><label>Last <input name=last/></label>
    <input type="submit">

    <div id="output"></div>
</form>   

<script type="text/javascript">
    var output = document.getElementById('output');
    function toHTML(text)
    {
        return text.replace(/</g,'&lt;');
    }

    function magic(form)
    {
        output.innerHTML = toHTML(form.first.value + form.last.value) + '@domain.com';
    }
</script>

首先
最后
var output=document.getElementById('output');
函数toHTML(文本)
{
返回文本。替换(/表单:


第一:
最后:
下一页:

<?php

$first = $_POST['first'];
$last =  $_POST['last']

echo $first . "." . $last . "@domain.com";
?>


有关更多示例和解释,请参见

,无论您是如何获得的,请始终记住不要相信用户输入

<?php

$sfirst = htmlentities($_POST['first']);
$slast =  htmlentities($_POST['last']);

echo $first . "." . $last . "@domain.com";
?>


此外,对最终结果运行验证程序可能会有所帮助。但请不要编写自己的电子邮件地址验证程序。

如果我没有弄错您的问题,听起来这可能会满足您的需要

注意:这段PHP代码不需要了解提交给它的表单中的字段,它只是在所有字段中循环,包括多项选择字段(如复选框),并吐出它们的值

<?php
// loop through every form field
while( list( $field, $value ) = each( $_POST )) {
   // display values
   if( is_array( $value )) {
      // if checkbox (or other multiple value fields)
      while( list( $arrayField, $arrayValue ) = each( $value ) {
         echo "<p>" . $arrayValue . "</p>\n";
      }
   } else {
      echo "<p>" . $value . "</p>\n";
   }
}
?>

如果你能指定一种编码语言(并为其添加一个标记),那会很有帮助。我不明白为什么这个问题是两张赞成票?我不能完全理解它…互联网上到处都是不发送结果的表单-你指的是什么?(坐在ylight旁边)-basic LAMP/phpy你应该称之为htmlentities()或htmlspecialchars()在任何用户输入时,您都会将其吐回浏览器以防止xss攻击。在这一点上,您完全同意您的看法。我们只是试图让答案尽可能简单和最少。当您这样做时,请在电子邮件地址中查找无效字符。无论如何:请求邮件地址的表单字段会更简单吗?或者我仍然缺少该点吗t?如果您同意,那么请不要给出错误的建议,并更正示例以正确转义。@orlandu63:严格来说,两者都应该应用。首先使用rawurlencode()将URL中的文本转换为文本,然后使用htmlspecialchars()在HTML中从URL转换为URL。实际上,第一次转义不需要第二次转义,但这并不意味着不应该使用htmlspecialchars()。
<?php
// loop through every form field
while( list( $field, $value ) = each( $_POST )) {
   // display values
   if( is_array( $value )) {
      // if checkbox (or other multiple value fields)
      while( list( $arrayField, $arrayValue ) = each( $value ) {
         echo "<p>" . $arrayValue . "</p>\n";
      }
   } else {
      echo "<p>" . $value . "</p>\n";
   }
}
?>