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

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
JavaScript数据类型:浏览器和nodejs之间是否有区别?JavaScript数据类型:浏览器和nodejs之间是否有区别?May 14, 2025 am 12:15 AM

JavaScript核心数据类型在浏览器和Node.js中一致,但处理方式和额外类型有所不同。1)全局对象在浏览器中为window,在Node.js中为global。2)Node.js独有Buffer对象,用于处理二进制数据。3)性能和时间处理在两者间也有差异,需根据环境调整代码。

JavaScript评论:使用//和 / * * / * / * /JavaScript评论:使用//和 / * * / * / * /May 13, 2025 pm 03:49 PM

JavaScriptusestwotypesofcomments:single-line(//)andmulti-line(//).1)Use//forquicknotesorsingle-lineexplanations.2)Use//forlongerexplanationsorcommentingoutblocksofcode.Commentsshouldexplainthe'why',notthe'what',andbeplacedabovetherelevantcodeforclari

Python vs. JavaScript:开发人员的比较分析Python vs. JavaScript:开发人员的比较分析May 09, 2025 am 12:22 AM

Python和JavaScript的主要区别在于类型系统和应用场景。1.Python使用动态类型,适合科学计算和数据分析。2.JavaScript采用弱类型,广泛用于前端和全栈开发。两者在异步编程和性能优化上各有优势,选择时应根据项目需求决定。

Python vs. JavaScript:选择合适的工具Python vs. JavaScript:选择合适的工具May 08, 2025 am 12:10 AM

选择Python还是JavaScript取决于项目类型:1)数据科学和自动化任务选择Python;2)前端和全栈开发选择JavaScript。Python因其在数据处理和自动化方面的强大库而备受青睐,而JavaScript则因其在网页交互和全栈开发中的优势而不可或缺。

Python和JavaScript:了解每个的优势Python和JavaScript:了解每个的优势May 06, 2025 am 12:15 AM

Python和JavaScript各有优势,选择取决于项目需求和个人偏好。1.Python易学,语法简洁,适用于数据科学和后端开发,但执行速度较慢。2.JavaScript在前端开发中无处不在,异步编程能力强,Node.js使其适用于全栈开发,但语法可能复杂且易出错。

JavaScript的核心:它是在C还是C上构建的?JavaScript的核心:它是在C还是C上构建的?May 05, 2025 am 12:07 AM

javascriptisnotbuiltoncorc; saninterpretedlanguagethatrunsonenginesoftenwritteninc.1)javascriptwasdesignedAsalightweight,解释edganguageforwebbrowsers.2)Enginesevolvedfromsimpleterterterpretpreterterterpretertestojitcompilerers,典型地提示。

JavaScript应用程序:从前端到后端JavaScript应用程序:从前端到后端May 04, 2025 am 12:12 AM

JavaScript可用于前端和后端开发。前端通过DOM操作增强用户体验,后端通过Node.js处理服务器任务。1.前端示例:改变网页文本内容。2.后端示例:创建Node.js服务器。

Python vs. JavaScript:您应该学到哪种语言?Python vs. JavaScript:您应该学到哪种语言?May 03, 2025 am 12:10 AM

选择Python还是JavaScript应基于职业发展、学习曲线和生态系统:1)职业发展:Python适合数据科学和后端开发,JavaScript适合前端和全栈开发。2)学习曲线:Python语法简洁,适合初学者;JavaScript语法灵活。3)生态系统:Python有丰富的科学计算库,JavaScript有强大的前端框架。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境