通过 PHP 发布到 Drupal
我想将 SMS 文本消息插入到 Drupal 中。
SMS 网关配置为将收到的消息转发到我们服务器上的 PHP 脚本,目前它只是将消息和电话号码插入数据库。
例如,消息被转发到 http://www.example。 com/smsupdate.php?phone=123445&text=message_content
我该如何将此数据导入到 Drupal 中?
I'm wanting to insert SMS text messages into Drupal.
The SMS gateway is configured to forward the received message to a PHP script on our server and at the moment it's just inserting the message and the phone number into a database.
For example, the message is forwarded to http://www.example.com/smsupdate.php?phone=123445&text=message_content
How would I go about getting this data into Drupal?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您能否安排一个 cron 作业来连接到存储 SMS 消息的数据库,将其取出,并利用 node_save() 来保存数据?
Could you schedule a cron job that connects to the database that stores the SMS message, pull it out, and utilize node_save() to save the data?
取决于您想如何在 Drupal 中使用它。最简单的方法是编写一个定义块的模块(或者它可能只是一个带有 PHP 输入过滤器的块,您可以在其中粘贴该块的代码),您可以在其中从数据库读取消息并显示它们。
Depends on how you want to use it in Drupal. The easiest way is to write a module that defines a block (or it could be just a block with the PHP input filter in which you paste the code for the block), where you read the messages from the database and show them.
在 Drupal 中使用
node_save()
。您可以通过调用 将此代码保存在单独的
.php
文件中创建节点之前的drupal_bootstrap()
。另一个更干净的解决方案是将所有内容放在一个小的自定义模块中并使用 hook_menu() 向您公开处理代码。有关模块创建的更多信息,请参阅 http://drupal.org/node/231276。
但请注意,这会让任何了解您的 URL 架构的人在您的网站上创建节点。您可能需要保护对脚本的访问。一个安全的解决方案可能是使用 服务 模块从 SMS 网关创建节点。
Creating content programmatically is easy in Drupal using
node_save()
.You can keep this code in a separated
.php
file by callingdrupal_bootstrap()
before creating the node.Another cleaner solution is to put everything in a small custom module and use hook_menu() to expose you handling code. See http://drupal.org/node/231276 for more information on module creation.
But beware that this let anyone who figured your URL schema create nodes on your website. You will probably need to protect access to your script. A secure solution may be to use the Services module to create node from your SMS gateway.