试图找到最好的方法

时间:2011-11-14 21:42:28

标签: php sql-server odbc append

我将使用MSSQL设置一个注册页面。

系统必须像以下一样工作:

  1. 用户在something.com/register.php

  2. 上附加数据
  3. 数据被发送到我的数据库所在的host-ip-address / regsecond.php。 (出于安全原因,这个php页面不会直接访问数据库。

  4. 主机上的php页面将启动另一个PHP页面,或者EXE文件将直接安全地直接到达数据库。

  5. 由于我的php级别不高,我想学习如果我可以启动php脚本,这些脚本可以正常运行而无需进入用户浏览器。在这里,我解释一下我说的话:

    “我在x.php上附加了一些数据,它启动了另一个PHP脚本,它将使用从x.php追加的DATA来完成这项工作,但是另一个PHP脚本 - 不会进入用户浏览器”

    我希望很清楚,总结一下,我应该使用exe [会更难],还是可以在不进入浏览器的情况下启动PHP脚本。当然如何。

3 个答案:

答案 0 :(得分:0)

您无法通过PHP将数据发布到其他网站。

如果你想要你的网站,那么你可以配置你的PHP脚本连接到MySQL的不同服务器,我不会说这是一个更大的安全。例如 而不是:

mysql_connect(localhost,username,password);

试试这个

mysql_connect(http://your-ip:portnumber,username,password);

答案 1 :(得分:0)

我不确定我是否正确理解这一点,但你可能

§1使用“公共”php脚本调用私有脚本:

<?php
//public register script
//now call private
//store data to txt-file or similar..
require('/path/outside/www-data/script_that_processes_further.php');

§2在另一台服务器上请求脚本,

<?php
file_get_contents('http://asdf.aspx?firstname=' . $theFirstName); //simplistic
//other options would be curl, xml/soap or whatever.

§1可与§2一起使用。

的问候, /吨

答案 2 :(得分:0)

您可以使用curl扩展名执行此操作。你可以在这里找到相关信息:

http://php.net/manual/en/book.curl.php

您可以执行以下操作:

$postdata = array(
    'item1' => 'data'
);

$ch = curl_init("http://host-ip-address/regsecond.php");
curl_setopt ($ch, CURLOPT_POST, true);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $postdata);

curl_exec($ch);
curl_close($ch);

这会直接从您的第一个脚本调用到第二个脚本,而不会向用户公开任何内容。在远端,数据将作为常规发布数据($ _POST)进入。