【问题标题】:sending html form data to php将html表单数据发送到php
【发布时间】:2011-07-21 12:57:15
【问题描述】:

我正在使用一个drupal站点。这是我在客户端编写的代码

<form  method="get">
Email :<input type ="text" name ="email" size ="20"><br />
<button style="width:65;height:25" onClick='email_direction_data()'><b>Send</b></button>
</form>

当我点击按钮页面将刷新。文本字段用于输入电子邮件地址。我在一个drupal模块文件中编写了以下代码来发送电子邮件。

  drupal_mail('direction', 'invitation', $_GET['email'] , language_default(), $params);

但是当我单击按钮时,文本字段内容不会 GET 数组。这是什么原因?我的代码有什么问题吗?

【问题讨论】:

  • 如果创建自定义模块,您应该使用 Drupal 的表单 api 而不是对 HTML 进行硬编码
  • 你的email_direction_data()函数是做什么的?
  • @laxman13:您不能从远程非 fapi 表单发布到 fapi 回调(大规模分配等预防)。看来 OP 正在尝试这样做。
  • @berkes 我知道您不能从非 fapi 表单转到 fapi 回调,建议他使用 fapi 创建表单以使他的生活更轻松。除非我错过了什么?
  • @laxman:你是对的。为清楚起见:如果您可以在 Drupal 中编写表单和表单处理:使用 FAPI。如果两者之一在外部应用程序中完成:不要使用 FAPI。

标签: php html drupal


【解决方案1】:

您需要有一个 html &lt;input type="submit" /&gt; 按钮,而不是 &lt;button&gt; 标记。

【讨论】:

  • :我按照你说的做了。但是文本字段内容仍然不会发送到服务器......:(..发生了什么?
  • 您也没有指定 &lt;form action="http://mysite.com/mygeturl"&gt; 但我刚刚注意到您正在将其写入 Drupal 模块文件中。如果您不使用 drupal 的表单 API,可能会一团糟。我不使用 Drupal,所以它可能不像编写原始 HTML 那样简单。就像@Laxman13 说的,你可能应该使用 Drupal 的表单 API:drupal.org/node/751826
【解决方案2】:

您知道您刚刚编写了完美的垃圾邮件中继器,是吗?

为了给你一个安全可靠的解决方案,我会在这个答案中写一本关于基本 web 开发和 drupal 开发的书。

我建议您多花一点时间来学习基本的 Web 开发、安全基础知识以及对 Drupal 开发的一些初步了解。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-22
    • 2012-01-28
    • 2016-06-21
    • 1970-01-01
    • 2022-06-16
    • 1970-01-01
    • 2014-01-20
    相关资源
    最近更新 更多