【问题标题】:Can php run code on server side without user request?php可以在没有用户请求的情况下在服务器端运行代码吗?
【发布时间】:2011-12-23 08:52:57
【问题描述】:

服务器 1 Ping/请求 URL http://website.com/page.php?code=NeedThat

Server 2 "page.php" 抓取 "NeedThat" 并在服务器端执行 img src 或 JavaScript

page.php 上的图片代码

非常感谢您的帮助!

【问题讨论】:

    标签: php javascript cron


    【解决方案1】:

    执行gotit.php 很容易。您只需使用 curl 或(如果允许)file_get_contents 来下载图像 src。对于 JavaScript,您需要弄清楚是什么网络请求导致的,然后手动执行。

    编辑:如果 gotit 需要继续输出该图像,那么您可以让 page.php 解析 HTML,然后对生成的 src(将是 website.com/sale.php...)进行自己的请求。

    【讨论】:

    • @Mark,你最好的选择可能是内置的DOM library。以loadHTML开头。
    • 我能够修复它非常感谢!使用 file_get_contents 和流
    【解决方案2】:

    如果你只需要运行另一个脚本,file_get_contents 可以填写正确的参数,并将返回值保存为这样:

    $result = file_get_contents('http://location.com/page.php?code=' . $code);

    更高级的解决方案可以使用 curl 之类的工具,但对于简单的请求,file_get_contents 就足够了。

    【讨论】:

    • @majiic bunnie 好的,所以我现在就这样了:Page.php <?php $result = file_get_contents('http://website.com/gotit.php?transid=' . $transid); ?> 和 gotit.php <?php echo '<img src="http://website.com/sale.php?TotalCost=1&AffiliateID=<?php echo $transid?>" width="1" height="1" >'; ?> 我跑了一次自己似乎没有工作
    • page.php 上的第一个调用看起来不错,gotit.php 上的第二个调用在活动的 php 回显中具有 。你不能这样做,而是应该:<?php echo '<img src="http://website.com/sale.php?TotalCost=1&AffiliateID='.$transid.'" width="1" height="1" >'; ?>
    • @magjiic bunnie 更改了仍然没有效果(我从浏览器运行进行测试)我需要更改文件权限吗?
    • 我能够修复它非常感谢!使用 file_get_contents 和流
    猜你喜欢
    • 2011-01-02
    • 2010-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多