首页 >web前端 >js教程 >使用AJAX和PHP构建您的邮件列表

使用AJAX和PHP构建您的邮件列表

William Shakespeare
William Shakespeare原创
2025-03-08 00:34:14142浏览

Use AJAX and PHP to Build your Mailing List

这种设置的美丽是页面的结构与其功能完全隔离,这使开发和维护无麻烦。

>
使用Ajax交付地址
JS文件夹内的>

要添加这些事件侦听器,我们将使用Prototype方便的观察方法。我们首先为该页面的加载事件添加了一个侦听器。在此听众内部,我们将一个事件听众附加到表格的提交活动:

请注意,我们表格的事件侦听器在提交表单时会拨打JavaScript函数storeaddress。此StoreadDress函数包含JavaScript,以对我们的PHP脚本进行AJAX调用。这就是外观:
// Attach handler to window load event <br>
Event.observe(window, 'load', init, false); <br>
 <br>
function init() { <br>
  // Attach handler to form's submit event <br>
  Event.observe('addressForm', 'submit', storeAddress); <br>
}

这个功能非常简单。首先,通过显示“添加电子邮件地址”消息,让用户可以进行某些事情。接下来,我们从表格中收集信息,以准备发送AJAX请求。请注意,我们如何使用Prototype的$ F函数访问文本字段的内容,该函数在提供该表单元素的ID时抓住给定元素的值。我们使用JavaScript逃生函数将用户输入转换为Unicode格式;这样,它的URL就可以通过GET方法传递到PHP脚本。 然后,
function storeAddress(e) { <br>
  // Update user interface <br>
  $('response').innerHTML = 'Adding email address...'; <br>
  // Prepare query string and send AJAX request <br>
  var pars = 'address=' + escape($F('address')); <br>
  var myAjax = new Ajax.Updater('response', 'ajaxServer.php', {method: 'get', parameters: pars}); <br>
  // Stop form from submitting when JavaScript is enabled <br>
  Event.stop(e); <br>
}
是此功能最重要的部分:创建新的ajax.updater对象。当我们创建一个ajax.updater对象时,我们将其传递到一些参数,包括:>

您要在其中显示服务器响应的元素的ID

php脚本的URL

  1. 您要发送到服务器端脚本的数据,以及交付方法(即发布或get)
  2. >
  3. > ajax.updater将将电子邮件地址发送到服务器并耐心地等待响应。当它收到响应时,它将显示我们在方法开始时插入的“添加电子邮件地址”的消息。最后,我们调用event.stop(原型库提供的另一个函数)以阻止表单实际提交到服务器。
  4. 设置您的邮件列表数据库
  5. >在我们编写任何PHP来存储电子邮件地址之前,我们需要一个放置它们的地方。此SQL将为您构建名为MailingList的表:>
    // Attach handler to window load event <br>
    Event.observe(window, 'load', init, false); <br>
     <br>
    function init() { <br>
      // Attach handler to form's submit event <br>
      Event.observe('addressForm', 'submit', storeAddress); <br>
    }
    代码存档中包含的

    >是一个名为createTable.php的PHP文件,它将为您创建此表。但是,在运行此文件之前,您需要使用MySQL数据库的详细信息来更新dbconstants.php文件。我建议您立即更新此文件,因为我们将在下一部分中使用这些常数。

    存储电子邮件地址
    >我们已经设置了所有内容,以将地址交付给服务器;现在,PHP将通过将地址存储在数据库中并将字符串返回到我们的Ajax对象中以表示成功或失败来完成该过程。让我们看一下发送电子邮件地址的ajaxserver.php文件。

    function storeAddress(e) { <br>
      // Update user interface <br>
      $('response').innerHTML = 'Adding email address...'; <br>
      // Prepare query string and send AJAX request <br>
      var pars = 'address=' + escape($F('address')); <br>
      var myAjax = new Ajax.Updater('response', 'ajaxServer.php', {method: 'get', parameters: pars}); <br>
      // Stop form from submitting when JavaScript is enabled <br>
      Event.stop(e); <br>
    }
    这个非常简单的PHP脚本称为称为storeaddress的函数,并返回到ajax对象,该函数由storeaddress返回的消息。与Ajax对象进行通信与打印字符串一样简单。

    StoreadDress所做的第一件事是将一个称为$消息的变量初始化到非破坏空间。然后,它确保脚本已在查询字符串中收到电子邮件地址。如果没有,我们将将$消息变量设置为非破坏空间。 $消息将在此功能的末尾返回给呼叫者。

    >

    >确定我们可以使用电子邮件地址,我们将要确保它是一个有效的地址。我们将使用正则表达式查找一些字母数字字符,然后是 @符号,更多字母数字字符,一个时期和一些字母数字字符。如果此测试失败,我们将将$消息设置为错误消息,并告知用户输入的电子邮件地址无效:
    CREATE TABLE `mailinglist` ( <br>
      `id` INT NOT NULL AUTO_INCREMENT , <br>
      `email` TEXT NOT NULL , <br>
      PRIMARY KEY ( `id` ) <br>
    );

    如果地址通过此测试,我们将其存储在数据库中。为此,我们连接到MySQL,选择数据库并运行插入查询。如果地址已正确存储,我们将$消息设置为成功消息;否则,我们将$消息设置为错误消息。
    <?php <br>
    require_once("inc/storeAddress.php"); <br>
    echo(storeAddress()); <br>
    ?>

    >最后,我们将$消息返回ajaxserver.php:>
    function storeAddress() { <br>
      $message = " "; <br>
      // Check for an email address in the query string <br>
      if( !isset($_GET['address']) ){ <br>
        // No email address provided <br>
      }

    >现在,加载页面,输入您的电子邮件地址并提交表格 - 您应该在没有页面重新加载的情况下看到将电子邮件地址添加到邮件列表表中。即使您禁用JavaScript,该页面也会以非常相似的方式工作,除非使用JavaScript动态地将StoreadDress的输出插入页面中,而是直接将其插入页面的PHP代码中的HTML。 ajax确实使您的邮件列表注册了一块小菜一碟。没有等待页面重新加载,这打断了您的访问者的浏览体验,也无需排除那些禁用JavaScript的人。原型使您可以快速且无痛地构建Ajax功能的过程,从而使您与网站的粉丝保持密切联系。

    >常见问题(常见问题解答)关于将AJAX与PHP一起构建邮件列表>

    >我如何将AJAX与PHP一起构建邮件列表?

    ajax(代表异步JavaScript和XML)是一种用于创建交互式Web应用程序的Web开发技术。 PHP是一种专为Web开发设计的服务器端脚本语言。合并后,AJAX和PHP可用于通过将数据从表单发送到服务器端脚本(PHP)而无需刷新页面来构建邮件列表。这是使用AJAX中的XMLHTTPRequest对象完成的,该对象与服务器进行通信并异步更新页面内容。

    >

    > ajax中xmlhttprequest对象在AJAX中的作用是什么?它用于异步从服务器发送和接收数据,这意味着它可以与服务器交换幕后数据,并在不重新加载整个页面的情况下更新网页的部分。

    >

    >我如何在PHP中使用PHP中的AJAX响应?回声语句用于输出一个或多个字符串。在Ajax的上下文中,可以使用ECHO语句将响应发送回AJAX请求。

    >

    >我如何将jQuery与Ajax和PHP?

    jQuery一起使用。它使HTML文档遍历和操纵,事件处理和动画之类的东西变得更加简单,可以易于使用易于使用的API,可在许多浏览器中使用。通过多功能性和可扩展性的结合,JQuery改变了数百万人写JavaScript的方式。您可以使用jQuery的Ajax方法将异步HTTP请求发送到您的php脚本。

    我如何调试Ajax和php?

    debugguging and ajax and php php可以有点棘手,因为ajax androns andynchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchronchonchronchonchronchonchromenchonConrinCons但是,您可以使用浏览器的开发人员工具来检查AJAX请求和响应。您还可以使用PHP的错误报告函数来捕获和处理PHP脚本中的错误。

    如何使用Ajax和die()die()die()ajax和php中的ajax和php中的错误处理AJAX和PHP?如果请求失败,则调用错误()方法。 die()函数打印消息并退出当前脚本。

    >我如何使用ajax将表单提交给PHP脚本?

    您可以使用Ajax的post()方法将表单提交给PHP脚本。 post()方法将发布请求发送到服务器,它可以发送以通过php脚本处理的表单数据。

    我如何使用AJAX使用AJAX使用PHP?

    您可以使用AJAX来更新数据库,您可以使用AJAX将数据发送到PHP脚本,然后可以更新数据库。这是使用AJAX中的post()方法完成的,该方法将邮政请求发送给服务器,并使用要更新的数据发送。

    >

    >我如何使用AJAX使用PHP?

    从数据库中检索数据,您可以使用AJAX将请求发送到PHP脚本以从数据库中检索数据。然后,PHP脚本可以使用检索到的数据将响应发送回AJAX请求。

    >我如何使用ajax使用php?

    >您可以使用ajax将请求发送到php脚本从数据库中删除数据库。然后,PHP脚本可以将响应发送回AJAX请求,以确认数据已删除。

以上是使用AJAX和PHP构建您的邮件列表的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn