Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   Вывод данных из бд (http://www.flasher.ru/forum/showthread.php?t=201865)

Godwarlock 25.06.2013 04:03

Вывод данных из бд
 
PHP код:

tess.php
<?php
    session_start
();
    
header('Content-Type: text/html; charset=utf-8');
    
error_reporting(E_ALL);
    
ini_set("display_errors""1");
    
// ---------------------------------------------------------
    
$username "";
    if(
$_SESSION['id'])
    if(
$_SESSION['username'])
    
$id preg_replace('#[^0-9]#i'''$_SESSION["id"]);
    
$username preg_replace('#[^a-z0-9]#i'''$_SESSION["username"]);
    
$links '<a href="profile.php">View Your Profile</a> | <a href="logout.php">Log Out</a>';
       
    include 
'connect.php';
 
        
$sql mysql_query("SELECT * FROM `mymembers` WHERE `id`  = ". (INT)$_SESSION['id'] );     
       
        if(
mysql_num_rows($sql) > 0)
           
$row mysql_fetch_assoc($sql);
 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Сттаница сайта</title>
<style type="text/css">
body {background-color: #0A0A0A;}
body,td,th {
    font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
    font-size: 14px;
    color: #CCC;
}
a:link {color: #93C9FF;} a:visited {color: #93C9FF;}
a:hover {color: #FFF;} a:active {color: #93C9FF;}
</style>
</head>
<body>
<p>
<?php echo $links?>
</p>
<h2>Привет <?php echo $row['username']; ?>, добро пожаловать </h2>
<div id="gameContainer">Текст<br />Текст
 <?php echo $row['username']; ?></div>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="800" height="450" id="test" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowFullScreen" value="true" />
<param name="movie" value="test.swf" />
<param name="quality" value="high" />
<param name="wmode" value="window" />
<param name="bgcolor" value="#ffffff" />
<embed src="test.swf" quality="high" wmode="window" bgcolor="#ffffff" width="800" height="450" name="test" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
</div>
</body>
</html>
</body>
</html>

test.swf
AS3
Код AS3:

stop();
// Assign a variable name for our URLVariables object
var variables:URLVariables = new URLVariables();
// Build the varSend variable
// Be sure you place the proper location reference to your PHP config file here
var varSend:URLRequest = new URLRequest("getsessionvars.php");
varSend.method = URLRequestMethod.POST;
varSend.data = variables;
// Build the varLoader variable
var varLoader:URLLoader = new URLLoader;
varLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
varLoader.addEventListener(Event.COMPLETE, completeHandler);
variables.myRequest = "bringit";
// Send the data to the php file
varLoader.load(varSend);
// When the data comes back from PHP we access it here   
function completeHandler(event:Event):void{
 
    var idVar = event.target.data.id_var;
    var userNameVar = event.target.data.uname_var;
    var passVar = event.target.data.upass_var;
    var resultStatus = event.target.data.my_result;
    if (resultStatus == "no_session"){
      gotoAndStop("no_session");
    } else if (resultStatus == "no_exist"){
      gotoAndStop("no_exist");
    } else if (resultStatus == "all_good"){
      userid_txt.text = idVar;
      username_txt.text = userNameVar;
      password_txt.text = passVar;
      gotoAndStop(5);
    }
}
trace(varSend);

getsessionvars.php
PHP код:

<?php
session_start
();
$id ""// Initialize $id var
$username ""// Initialize $username var
$password ""// Initialize $password var
$_POST['myRequest'] = "bringit";
if (isset(
$_POST['myRequest']) & $_POST['myRequest'] == "bringit"){
 
    if(!isset(
$_SESSION["id"])) {
        echo 
"my_result=no_session id_var=false uname_var=false upass_var=false";
        exit();
    } else {
        
$id preg_replace('#[^0-9]#i'''$_SESSION["id"]);
        
$username preg_replace('#[^a-z0-9]#i'''$_SESSION["username"]);
        
$password preg_replace('#[^a-z0-9]#i'''$_SESSION["password"]);
    }
    
// Check database to see if the id is related to this password
    
include_once "connect.php";
    
$sql mysql_query("SELECT * FROM myMembers WHERE id='$id' AND username='$username' AND password='$password' LIMIT 1");
    
$numrows mysql_num_rows($sql);
    if(
$numrows == 0){
        echo 
"my_result=no_exist id_var=false uname_var=false upass_var=false";
        exit();
    } else {
        echo 
"my_result=all_good id_var=$id uname_var=$username upass_var=$password";
    }
}
// close initial if condition
?>

Во флеше должен отобразиться username и id авторизованного пользователя. Но не работает. После авторизации часть не относящиеся к флешу работает, а вот в самом флеше без результата. В чем проблема может быть?

incoob 25.06.2013 08:12

Посмотрите каким-нибудь firebug-ом, что приходит в ответ от сервера.

bifidokk 25.06.2013 09:19

$_SESSION["password"] и $_SESSION['username'] точно существуют?

совершенно непонятен этот кусок кода. скорее всего неправильная копипаста.
PHP код:

if($_SESSION['id'])
    if(
$_SESSION['username'])
    
$id preg_replace('#[^0-9]#i'''$_SESSION["id"]);
    
$username preg_replace('#[^a-z0-9]#i'''$_SESSION["username"]); 


попробуйте запустить скрипт, к котрому долбится флешка без проверки на $_POST['myRequest'] и сразу будет понятно, где ошибка.

Godwarlock 25.06.2013 17:58

Запустил. Нигде ничего не выдает ошибок


Часовой пояс GMT +4, время: 14:45.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.