AJAX和file_get_contents

时间:2013-04-14 10:22:04

标签: php jquery ajax

我有一个使用file_get_contents的脚本然后解码返回的JSON ...

$urlone = json_decode(file_get_contents("http://api.twitter.com/1/statuses/user_timeline.json?include_entities=true&include_rts=false&screen_name=".$screen_name."&count=".$tweet_count."&page=1"),true);

我想要实现的是回调,所以我可以拥有一个漂亮的加载器,然后在完成后动画内容。有没有办法在Javascript启用时使用JQuery进行AJAX调用,如果禁用则回退到默认PHP?

2 个答案:

答案 0 :(得分:2)

PHP不知道用户在处理来自用户的请求时是否启用了JavaScript,至少在第一次请求时没有。

通常你会假设用户没有javascript并从那里进行增强,但是当你想要'回退'到PHP时,无论用户是否具有JavaScript功能,你都需要渲染JSON - 所以现在使用JavaScript当你(和用户)已经拥有数据时,这一点毫无意义。

答案 1 :(得分:1)

你能做的是:

  • 确认先前请求中已启用js。如果启用链接到依赖于启用javascript的php文件。如果没有,链接到直接显示输出的php文件。你可以结合Meta重定向和Javascript来实现这一点。
  • 或者在<noscript>标签内的iframe中使用直接输出调用php文件,该标签属于执行jquery的标记。

在第一个选项中你可以将file.php链接到fileWithJs.php或fileWithoutJs.php

在第二个选项中你会有这样的东西:

<script>
    // jquery here
</script>
<noscript><iframe src="data.php"></iframe></noscript>