通过PHP发布到Drupal

时间:2010-06-29 16:37:33

标签: php drupal sms sms-gateway

我想将短信插入Drupal。

SMS网关配置为将收到的消息转发到我们服务器上的PHP脚本,此时它只是将消息和电话号码插入数据库。

例如,邮件会转发到http://www.example.com/smsupdate.php?phone=123445&text=message_content

我如何将这些数据导入Drupal?

3 个答案:

答案 0 :(得分:2)

使用node_save()在Drupal中以编程方式创建内容非常简单。

  $node = new stdClass();
  node_object_prepare($node);
  $node->title = $_GET['title'];
  $node->body = $_GET['text'];
  node_save($node)

您可以在创建节点之前调用drupal_bootstrap()将此代码保存在单独的.php文件中。

  chdir('/path/to/drupal');
  require_once('includes/bootstrap.inc');
  drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);

另一个更清洁的解决方案是将所有内容放在一个小型自定义模块中,并使用hook_menu()向您公开处理代码。有关模块创建的更多信息,请参阅http://drupal.org/node/231276

但请注意,这可以让任何想出您的网址架构的人在您的网站上创建节点。您可能需要保护对脚本的访问权限。安全的解决方案可能是使用Services模块从您的SMS网关创建节点。

答案 1 :(得分:1)

取决于你想如何在Drupal中使用它。最简单的方法是编写一个定义块的模块(或者它可以只是一个带有PHP输入过滤器的块,您可以在其中粘贴块的代码),在这里您可以从数据库中读取消息并显示它们。

答案 2 :(得分:0)

您是否可以安排连接到存储SMS消息的数据库的cron作业,将其拉出来并利用node_save()来保存数据?