我有一个Excel文件,我需要将数据发送到我的Drupal MySql数据库.为此,我在Excel工作表的VBA中使用HTTP POST,如下所示:
Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")
URL = "http://localhost:8082/acquia-drupal/node/2"
objHTTP.Open "POST", URL, False
objHTTP.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
objHTTP.send ("string=testdata")
Run Code Online (Sandbox Code Playgroud)
我想使用Drupal页面来解析POST数据并将其写入Drupal MySql数据库中的表.
这是我开始的,
<?php
if (isset($_POST['string']))
{
$trans = $_POST['string'];
db_query("INSERT INTO {excel} (ExcelData) VALUES (%d')",
$trans);
}
Run Code Online (Sandbox Code Playgroud)
这是正确的方向吗?此外,有人可以提供一些代码片段指导正确解析POST数据吗?
以您概述的方式处理传入的$ _POST数据有点像手动滚动您自己的Web服务.这不一定是坏事,有时它是让事情互相交流的最佳方式.
我强烈强调,如果您在所发布的代码段中使用类似代码,那么您将对自己的安全性,数据清理和SQL注入保护负责.
此外,正如Eli的评论中所指出的那样,您可能会将其放入节点中.这是一种相对危险的方法,因为任何人都可以轻松地弹出该节点并开始将$ _POST数据发送到您的数据库中.创建一个模块,使用hook_menu()来定义导入代码的url路径,并对该特定url设置一些访问控制限制将使事情更安全一些.
| 归档时间: |
|
| 查看次数: |
4287 次 |
| 最近记录: |