【发布时间】:2012-12-12 13:26:52
【问题描述】:
我有一个 scriptA.cgi,它调用 scriptB.cgi。
scriptB.cgi 需要一个参数。
我都试过了 在我尝试过的 scriptA.cgi 中:
`perl -l scriptB.cgi foo="toast is good" `;
还有
@args = ("perl", "-l", "scriptB.cgi", "foo=\"toast is good\"");
system(@args);
当我从命令行调用 scriptA.cgi 时,它按预期工作。 但是,当我通过浏览器调用 scriptA.cgi 时 scriptB.cgi 被执行,但它无法读取传入的参数并将 foo 打印为空。
有没有更丑陋的方式来调用另一个 cgi 并传入参数?
scriptB 不必是 cgi,如果使用直接的 .pl 和 args 更容易做到这一点,我也很乐意这样做......但 arg 必须是带空格的引号字符串。
欢迎所有想法。
【问题讨论】:
-
为什么将它们放在不同的程序中?
-
因为它们是独立的程序......它们做不同的事情。具体来说,scriptB 发送 SMS 消息。它将电话号码和消息作为参数。它被许多其他脚本使用,并且在所有其他程序中实际包含该代码将非常难看。
-
您实际上并没有显示不起作用的代码。
-
我实际上已经展示了不起作用的代码!我展示了两个例子。你还想看什么?我的问题的重点是,当我从命令行运行初始脚本(调用第二个脚本)时,代码确实有效。它与其余代码的作用有什么不同?两个脚本都可以正常工作,唯一不起作用的是将参数从 scriptA 传递到 scriptB,我详细说明了我在这方面所做的工作。
-
你没有展示你是如何尝试在 scriptB 中获取参数的。