【问题标题】:Two Forms In PHPPHP 中的两种形式
【发布时间】:2012-05-16 18:11:25
【问题描述】:

我有一个显示两种形式的 php 文件。第一个表单显示来自 mysql 表中的客户数据,该表还包括一个复选框。第二个表单包含来自另一个表的数据,还包含一个复选框,该表单包含消息。我需要将复选框选中的消息发送到第一个表单中选择的客户列表。

我可以用纯 php 做到这一点吗?还是我需要使用javascript?请指点我一个教程。

【问题讨论】:

  • 您可以只使用 php ,但最好使用 js 或 jquery 因为最好在将数据发送到服务器之前检查表单输入的值,对于教程只需在 google 或 on 中键入 Javascript 教程youtube,你会得到成千上万的好结果
  • William,如何仅使用 php 来完成,请详细说明?
  • @Interstellar_Coder 您想在页面打开时从您的数据库中加载客户姓名和消息吗?还是静态信息?
  • @WilliamKinaan 可以使用 JS 进行验证,但即使使用 JS 也应该使用 PHP 进行验证。 JS 验证是为了向用户提供更快/更好的反馈,服务器端验证实际上是为了防止不良数据。
  • @Chris 是的,你说得对,但我问他为什么要使用两种形式?他只能使用一种形式

标签: php


【解决方案1】:

你需要下载 Jquery 库...并阅读什么是 ajax

获取价值

var value = $("#customer").val();

我们得到选择器的价值,其中 id="customer"

检查一下

if($('#customer').is(":checked")) { } else { }

在服务器上发送数据

var value = $("#customer").val();
$.ajax({
            type: "POST",
            url: "default.php",
            data: "name="+value,
            success: function(data){
            alert('ok!') ;
            }
});

我们在服务器 post 方法上发送数据...我们发送变量值,value = value in value id="customer"

祝你好运!对不起我的英语:)

【讨论】:

    【解决方案2】:

    你想要完成的最初问题是你cannot natively submit two forms concurrently

    绝对有必要有两个单独的表格吗?如果是这样,您将需要实现 something like this(由 Roatin Marth 编写)以便在提交时将值从一个表单复制到另一个表单:

    function form2form(formA, formB) {
       $(':input[name]', formA).each(function() {
         $('[name=' + $(this).attr('name') +']', formB).val($(this).val())
       })
    }
    

    当然,如果您的业务需求不需要两个单独的表单,您可以将所有值放在一个表单中,然后使用 PHP 进行处理。如果您需要在提交之前验证表单,您需要先使用 Javascript 进行验证。

    一旦在 PHP 中,您将获得来自 $_POST 超全局的值。然后你就可以用它做你需要做的事情了。

    // With each customer checked, send checked messages
    foreach($_POST['customers'] as $customer)
    {
       // With this customer, send all messages
       foreach($_POST['messages'] as $message)
       {
          // Send $message here
       }
    }
    

    【讨论】:

    • 是的,必须有两种形式,发送消息的用户需要选择消息将发送给谁,每个人说消息将发送给哪些教师。
    • 如果您希望它在页面上以两种不同的形式在视觉上显示,那就是一些 CSS 样式的问题。
    猜你喜欢
    • 2015-05-15
    • 2014-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-12
    • 2011-09-28
    • 2011-02-03
    • 1970-01-01
    相关资源
    最近更新 更多