php - 从 Flash 调用时 JavaScript 函数不运行

标签 php javascript ajax actionscript-3

我有一个 .php 页面,其中有一个 JavaScript 函数,如果 MySQL 数据库中的某些内容正确,则运行该函数。我知道这个功能有效。

所以我的 php 文件如下所示:

thephp.php:

<?php
$should_i_run_the_function = checkDatabase();
if(!$should_i_run_the_function){die("you can't");}
?>
<!doctype html>
<html>
<head>

<script type="text/javascript" language="Javascript" src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.4.1.min.js"></script> 
<script>
function myFunction()
{
/* works in browser */
make_an_AJAX_call_and_insert_something_to_database();
}
    <?php
    if($should_i_run_the_function)
    {
    ?>
    myFunction();
    <?php
    }
    ?>
</script>
</head>
<body>
</body>
</html>

当我在浏览器中打开页面时,它应该正常工作。

但是当我从 ActionScript 3 调用它时,如下所示:

public function CallURL()
{
    var request:URLRequest = new URLRequest('http://localhost/thephp.php'); 
    var variables:URLLoader = new URLLoader(); 
    variables.dataFormat = URLLoaderDataFormat.TEXT; 
    variables.addEventListener(Event.COMPLETE, Ajax_completeHandler()); 
    try 
    { 
        variables.load(request); 
    }  
    catch (error:Error) 
    { 
        trace("Unable to load URL: " + error); 
    } 
}

completeHandler 函数正确显示了 php.php 的内容,并且它不会死掉(“你不能”),但它不会在 JavaScript 中执行 mysql 插入。

我尝试尽可能简化代码,那么问题可能出在哪里?

JavaScript 是否需要“客户端”是浏览器才能运行?

我也尝试过 ExternalInterface 但它不适用于该功能,我想知道是否可以通过 URLRequest 运行 JS 代码。

谢谢!

最佳答案

你指出了这一点:

Does JavaScript require the "client" to be a browser to run?

是的,当然,javascript是由浏览器执行的,而不是由HTTP请求执行的。

关于php - 从 Flash 调用时 JavaScript 函数不运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16697097/

相关文章:

ajax - Spring 3 项目上的 java.lang.ClassNotFoundException : org. codehaus.jackson.map.ObjectMapper

php - 与 Mysql 的连接未关闭

javascript - 斜体字体样式不适用于元素的类属性

javascript - 如何处理两个函数

javascript - jQuery Accordion - 将选定的一个向上移动

Javascript - 在自动完成结果上单击添加永久占位符

PHP:MySQL 表结构

php - 通过 PHP 与 cPanel 交互

php - 如何获取我刚刚插入的行的 php/mysql

c# - 从客户端 XXX 检测到具有潜在危险的 Request.Form 值