【问题标题】:Run a url to send sms in the background?运行一个网址在后台发送短信?
【发布时间】:2012-06-15 17:18:15
【问题描述】:

当我批准订单时,它会重定向到一个确认页面,该页面将详细信息添加到 dbase、发送电子邮件等...现在,我希望它也可以通过加载网关 url 自动发送短信 url 在浏览器中打开,但我希望它在后台运行。

现在,我在点击的地方放了一个链接,它会在新浏览器中打开...

请帮忙

【问题讨论】:

    标签: php url sms


    【解决方案1】:

    如果我理解正确,您可以通过打开 URL 来发送 SMS。您可以通过在 php 文件中打开带有 cURL 的 url 来实现这一点:

    // create a new cURL resource
    $ch = curl_init();
    
    // set URL and other appropriate options
    curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
    
    // grab URL and pass it to the browser
    curl_exec($ch);
    
    // close cURL resource, and free up system resources
    curl_close($ch);
    

    更多信息请见:http://php.net/manual/en/function.curl-setopt.php

    【讨论】:

    • @Naira 或者,如果 SMS 发送页面需要一些时间来加载并且您不希望您的页面因此而延迟,您可以运行 exec("wget '$url' > /dev/null"); 之类的东西,假设您的服务器正在运行在 linux 上(将输出重定向到任何地方使exec 在后台运行,在程序完成之前不会挂起 PHP)。
    • 我尝试了 curl 并确保它可以工作,因为网关返回代码 1800,这意味着没有发送短信。我将确切的 url 输入浏览器并得到代码 1801,这意味着消息已发送并且我收到了消息。你觉得还能剩下什么?
    • 我也尝试了 exec() 并得到了这个响应“警告:exec() 出于安全原因在第 23 行的 /home/xxxx/public_html/allnews.php 中被禁用”
    • 非常感谢您的回答...你让我很开心...我能够通过此脚本执行和发送消息...注意:消息的每个空格都应该替换为 '% 20'...否则会引发不良反应..谢谢!
    【解决方案2】:

    Asynchronous PHP calls - 这应该是你需要的。

    【讨论】:

      【解决方案3】:

      您可以使用Tasks 模块进行延迟(后台)执行。
      您可以在那里发送短信和电子邮件,您的主页将不必等待它们执行。

      【讨论】:

      • 不确定 Windows,因为任务管理器应该由 cron 或其他东西启动(我猜是 Windows 中的任务调度程序)。
      【解决方案4】:

      这可能不是您想要的,但值得一提。为什么不直接将电子邮件抄送给您的运营商 SMS 电子邮件?

      T-Mobile: phonenumber@tmomail.net
      Virgin Mobile: phonenumber@vmobl.com
      Cingular: phonenumber @cingularme.com
      Sprint: phonenumber@messaging.sprintpcs.com
      Verizon: phonenumber@vtext.com
      Nextel:强> phonenumber@messaging.nextel.com

      【讨论】:

      • HA,IDK。那是假设他的运营商是一家主要的美国公司,并且这些文本是供他自己使用而不是用户使用的。
      猜你喜欢
      • 2011-11-30
      • 1970-01-01
      • 2013-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-15
      • 1970-01-01
      相关资源
      最近更新 更多