mysql — PHP не может получить параметр из ActionScript3

Я создал сайт и общаюсь с ActionScript. В ActionScript я создаю функцию для вызова функции php и публикации переменных для загрузки данных из базы данных mysql. Проблема заключается в том, когда я вызываю функцию actionscript и публикую переменные в php. На стороне php я вызываю $ _POST [‘action’]; для получения переменных со стороны Actionscript, но когда я хочу увидеть это сообщение $ _POST [‘action’]; это ошибка, как это

Notice: Undefined index: action in C:\wamp\www\MPA-EM\bin\model.php on line 3

и это функция сценария действия для вызова php:

   public function SelectData(TBN:String,TYPE:String):void{
var myrequest:URLRequest = new URLRequest("http://localhost/MPA-EM/bin/model.php");
myrequest.method = URLRequestMethod.POST;

var variables:URLVariables = new URLVariables();
variables.tablename = TBN;
variables.action = TYPE;
myrequest.data = variables;

var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
loader.addEventListener(Event.COMPLETE, dataOnLoad);
loader.addEventListener(Event.CANCEL, dataError);

try{
loader.load(myrequest);
}catch(e:Error){
Alert.show(e.toString());
}

}

public function dataOnLoad(evt:Event):void
{
Alert.show(evt.target.data.Result);
if(evt.target.data.Result) {
DText.text = 'ok';
} else DText.text = "Error in select submitted data";

//status is a custom flag passed from back-end
}
public function dataError(e:Event) :void{

DText.text = e.target.errormsg;
}

и это сторона функции php model.php:

<?php
//test for recive
$actionW = $_POST['action'];//error this line.
echo $actionW;
// end test

if(isset($_POST['action']) && !empty($_POST['action'])) {
$action = $_POST['action'];
echo $action;
switch($action) {
case 'select' :
$tablename = clean($_POST['tablename']);
selectedData($tablename);
break;

case 'blah' : blah();break;
}
}

function selectedData($table){
// create connection
$connection = mysql_connect("localhost", "root", "") or die ("Couldn't connect to the server.");

// select database
$db = mysql_select_db("ideaddcom_maps", $connection) or die ("Couldn't select database.");
// create SQL
$sql = 'SELECT * FROM '.$table;

// execute SQL query and get result
echo $sql;
$sql_result = @mysql_query($sql, $connection) or die ("Couldn't execute query.".mysql_error());$row = mysql_fetch_object($sql_result);foreach($row as $cname => $cvalue){
echo "Result=$cvalue";

}

// free resources and close connection
mysql_free_result($sql_result);
mysql_close($connection);

}

//Function to sanitize values received from the form. Prevents SQL injection
function clean($str) {
$str = @trim($str);
if(get_magic_quotes_gpc()) {
$str = stripslashes($str);
}
return mysql_real_escape_string($str);
}?>

Что не так? Просьба любую идею для этого и спасибо.

0

Решение

Я не знаю, нашли ли вы решение вашей проблемы, но это может помочь кому-то еще.

1 — Посмотрите здесь, это может помочь вам: Отправка результатов из AS3 в PHP / SQL — #Error 2101

2 — чтобы избежать PHP Undefined index уведомление, Вы должны всегда проверять, установлен ли ваш var, прежде чем использовать его, например, что вы сделали в строке 7.

3 — Избегайте все выходы которые не используются вашим Как скрипт в PHP скрипт так как КАК просто получит первый вывод.

4 — Если вы используете for или же foreach цикл, чтобы получить данные в вашем PHP скрипт, вы должны делать это, потому что echo который отправит данные КАК должен быть выполнен один раз:

$result = '';
$sep = ',';
foreach($row as $cname => $cvalue){
$result .= $cvalue . $sep;
}
echo 'Result='.$result;
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]