2014-12-13 55 views
2
将数据发送到PHP

嘿,大家好我想使用AS3PHP通过使用PDO 有我的AS3代码发送变量。我只想添加as3变量到数据库。 my.fla使用AS3 PDO

import flash.events.MouseEvent; 
import flash.net.URLLoader; 
import flash.net.URLRequest; 
import flash.net.URLVariables; 
import flash.net.URLLoaderDataFormat; 
import flash.net.URLRequestMethod; 
import flash.events.Event; 


gonder_btn.addEventListener(MouseEvent.CLICK, sendData) 

function sendData(event:MouseEvent):void 
{ 
    var urlreq:URLRequest = new URLRequest ("mydomain/dzak/gonder.php"); 
    urlreq.method = URLRequestMethod.POST; 

    var urlvars:URLVariables = new URLVariables(); 
    urlvars.isim = isim_txt.text; 
    urlvars.konu = konu_txt.text; 
    urlvars.masa = masa_txt.text; 
    urlvars.personel = personel_txt.text; 
    urlvars.mesaj = mesaj_txt.text; 
    urlreq.data = urlvars;   

    var loader:URLLoader = new URLLoader (urlreq); 
    loader.addEventListener(Event.COMPLETE, completed); 
    loader.dataFormat = URLLoaderDataFormat.VARIABLES; 
    loader.load(urlreq); 
} 

有我的PHP代码。我用PDO。
(gonder.php)

<?php 

    // database connection 
    $conn = new PDO("mysql:host=$dbhost;dbname=$dbname",$dbuser,$dbpass); 

    $isim = @$_POST["isim"]; 
    $konu = @$_POST["konu"]; 
    $masano = @$_POST["masa"]; 
    $personel = @$_POST["personel"]; 
    $mesaj = @$_POST["mesaj"]; 

    // query 
    if($_POST){ 
    $sql = "INSERT INTO sikayet (adsoyad,masano,konu,mesaj,personel) VALUES (:isim,:masano,:konu,:mesaj,:personel)"; 
    $q = $conn->prepare($sql); 
    $q->execute(array(':adsoyad'=>$adsoyad, 
         ':masano'=>$masano, 
         ':konu'=>$konu, 
         ':mesaj'=>$mesaj, 
         ':personel'=>$personel)); 
    } 
?> 

当我执行FLA我得到一些错误:

at Error$/throwError() 
at flash.net::URLVariables/decode() 
at flash.net::URLVariables() 
at flash.net::URLLoader/onComplete() 
+0

Merhaba!你有没有尝试直接发布到gonder.php? – Duke 2014-12-14 07:15:51

+0

没有它实时的不容易。我只是想通过PDO向MySQL添加变量。 – 2014-12-14 16:47:47

+0

这篇文章的标题是误导性的,因为没有办法从ActionScript使用pdo'将数据发送到PHP。 PDO是PHP与数据库交流的一个功能。 – 2015-02-25 22:07:18

回答

0

您使用的是相对路径,而不是绝对路径。 Flash Player需要运行服务器中部署的服务器端(PHP)代码调用的绝对路径。

您可以设置可配置的绝对路径,也可以在AS3代码中使用硬编码。确保在测试期间您的PHP Web服务器正在运行您的PHP代码的代码。

它肯定会工作。

Current Value: "mydomain/dzak/gonder.php" 
Expected Value: "http://www.mydomain/dzak/gonder.php" 

试试这样。