将PHP插入未在线工作的mySQL数据库(通过flash应用程序)

将PHP插入未在线工作的mySQL数据库(通过flash应用程序),php,mysql,database,actionscript-3,flash,Php,Mysql,Database,Actionscript 3,Flash,所以,问题来了。我有一个小型flash应用程序,它将一些变量发送到php脚本(通过POST),php脚本将它们发送到mySQL数据库 当我离线测试我的flash时,它工作得很好,我转到phpmyadmin,注册表就完成了。当我将swf上传到在线html时,它就停止工作了。它不再在数据库中创建另一个注册表。我不知道为什么会这样 我读了一些关于它的文章,发现了跨域策略,并认为这可能是问题所在。因此,我制作了一个小的.xml文件,并将其上传到两台服务器(swf所在的服务器和拥有数据库的服务器),但它仍

所以,问题来了。我有一个小型flash应用程序,它将一些变量发送到php脚本(通过POST),php脚本将它们发送到mySQL数据库

当我离线测试我的flash时,它工作得很好,我转到phpmyadmin,注册表就完成了。当我将swf上传到在线html时,它就停止工作了。它不再在数据库中创建另一个注册表。我不知道为什么会这样

我读了一些关于它的文章,发现了跨域策略,并认为这可能是问题所在。因此,我制作了一个小的.xml文件,并将其上传到两台服务器(swf所在的服务器和拥有数据库的服务器),但它仍然不工作

这是我的crossdomain.xml文件(以这种方式命名):


以及与数据库位于同一服务器上的php(名为insert.php):

<?php

//connect to the local MySQL
$connect=mysql_connect("localhost", "DBName", "DBPass");

//select your database
mysql_select_db("DBTable");

//query the database
$query="INSERT INTO results(Nome,Email,Idade,Profissao,Pais)
VALUES
('$_POST[nome]','$_POST[email]','$_POST[idade]','$_POST[profissao]','$_POST[pais]')";


//$result=mysql_query($query);

if (!mysql_query($query,$connect))
{
    die('Error: ' . mysql_error());
    echo "InsertOk=NotOk";
}else{
    echo "InsertOk=Ok";
}

mysql_close($connect)
?>

除了明显的安全缺陷,尝试

"INSERT INTO results(Nome,Email,Idade,Profissao,Pais)
VALUES
('{$_POST['nome']}','{$_POST['email']}','{$_POST['idade']}','{$_POST['profissao']}','{$_POST['pais']}')";
基本上添加
{}
'

编辑:
别提那部分。注意到这不相关

我相信您必须调用自己的站点,并使用将
$\u POST
-值传递到其他域



即使这是针对javascript的,我相信同样的规则也适用于您的swf文件。

我知道这段代码在sql注入方面存在问题,但我只是想让它同时工作。我对php/mySQL也相当熟悉,所以我试图一次解决一个问题。此外,当我离线测试应用程序并将变量发送到在线服务器时,这也能起作用,因此我猜它正确地获取了POST值,只是由于某些原因无法在线工作。可能是安全问题?这是跨域问题。基本上,您需要在与.swf相同的域上调用一个php脚本,然后使用相同的值对另一个域执行CURL。我的最新答案让你大吃一惊。
"INSERT INTO results(Nome,Email,Idade,Profissao,Pais)
VALUES
('{$_POST['nome']}','{$_POST['email']}','{$_POST['idade']}','{$_POST['profissao']}','{$_POST['pais']}')";