Comunidad de diseño web y desarrollo en internet online

urgente

Citar            
MensajeEscrito el 18 May 2007 11:56 pm
como puedo hacer comunicar flash, php y mysql haciendo una busqueda desde flash

Por roy_more

0 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 19 May 2007 03:16 am
En flash se crean dos objetos LoadVars, uno de envio y otro de recepción, y dos funciones, una donde cargas los datos para tu consulta y la otra se ejecuta cuando el PHP regresa una respuesta.

Código :

DatosEnvioEmpl = new LoadVars();
DatosReciboEmpl = new LoadVars();
_global.DatosEmpl = new Object();
//****************************************************************************
// funciones de acceso a Base de datos
//****************************************************************************
LeeEmpleados = function() {
   DatosEnvioEmpl.Tabla = "empleados";
   DatosEnvioEmpl.Condicion = "-";
   DatosEnvioEmpl.Orden = "NombreCorto";
   DatosEnvioEmpl.sendAndLoad("OT-QuerySQL-Lista.php", DatosReciboEmpl, "POST");
}
//****************************************************************************
DatosReciboEmpl.onLoad = function(swResultado) {
   if (ErrorQuery(swResultado, this)) return;
   arrCamposTemp = new Array();
   _global.DatosEmpl = new Object();
   arrRegsTemp = this.Datos.split("###");
   for (var i = 0; i < arrRegsTemp.length - 1; i++) { // el ultimo registro viene vacio
      arrCamposTemp = arrRegsTemp[i].split("@@@");
      _global.DatosEmpl[arrCamposTemp[0]] = new Object();
      _global.DatosEmpl[arrCamposTemp[0]] = {Ord: i,
                Nick:arrCamposTemp[1], 
                Nombre:arrCamposTemp[2],
                TelCasa:arrCamposTemp[3],
                TelOfic:arrCamposTemp[4],
                MailIlce:arrCamposTemp[5],
                MailOtro:arrCamposTemp[6],
                swAdmon:arrCamposTemp[7],
                Contra:arrCamposTemp[8],
                RFC:arrCamposTemp[9],
                DirCasa:arrCamposTemp[10],
                TelCel: arrCamposTemp[11]};}
}

en PHP el archivo "OT-QuerySQL-Lista.php" forma el query completo formado por las variables que le pasa flash

Código :

<?php
//$resul = setlocale(LC_ALL, "es_ES.ISO-8859-1");
require("OT-Connection.mysql.inc.php"); // este es otro archivo PHO
$tabla = $_POST['Tabla'];
$condicion = $_POST['Condicion'];
$orden = $_POST['Orden'];
if ($condicion == "-") {
   $condicion = " ";
} else {
   $condicion = "WHERE $condicion";
}
if ($orden == "-") {
   $orden = " ";
} else {
   $orden = "ORDER BY ".$orden;
}
$query = "SELECT * FROM $tabla $condicion $orden";
$nResult = mysql_query($query, $swConn);
if (!$nResult) {
   echo "&swErr=1&";
   echo "&MsgErr='003-Error al consultar tabla $tabla -- SQLerr("
         . mysql_errno($swConn) . ": " . mysql_error($swConn) ."'  $query&";
   exit();
}

$nReg = mysql_num_rows($nResult);
echo "&swErr=0&";
echo "&MsgErr=&";
echo "&nRegs=$nReg&";

if ($nReg<1) {
   echo "&Datos=&";
   exit();
}
echo "&Datos=";


while (   $arrRow = mysql_fetch_array($nResult)) {
   $arrayLength = count($arrRow) / 2;
//   foreach ($arrRow as $value) {
   for ($i=0; $i < $arrayLength; $i++) {
      if ($arrRow[$i] != "") {
         echo utf8_encode($arrRow[$i])."@@@"; // delimitador de campo
      } else {
         echo "-@@@";
      }
   }
   echo "###"; // delimitador de registro
}
echo "&";
?> 



el segundo archivo de PHP llamado "OT-Connection.mysql.inc.php" se conecta a la Base de datos mySQL:

Código :

<?php
$host = 'localhost';
$user = 'root'; // usuario para acceder a la base de datos
$pass = ''; // password del usuario
$db = 'sitioot'; // nombre de la base de datos

$swConn = mysql_connect ($host, $user, $pass);
if (!$swConn) {
   echo "&swErr=1&";
   echo "&MsgErr='001-Error al conectarse al servidor'&";
   exit();
}

$swBD = Mysql_select_db ( $db );
if (!$swBD) {
   echo "&swErr=1&";
   echo "&MsgErr='002-Error al conectarse a la BD -- SQLerr(". mysql_errno($swConn) . ": " . mysql_error($swConn) . "'&";
   exit();
}
?>


o si lo deseas en el primer archivo PHP puedes crear tu consulta sin necesidad de los datos que te envia FLASH, porque los parametros que te envia FLASH en este caso son puras cadenas de caracteres, que si tu ya sabes de antemano las puedes tener como constantes en tu PHP.

y para instalar un servidor WEB que acepte PHP y MySQL te recomiendo que te descargues el Server2Go

http://www.server2go-web.de/download/download.html

el que contiene PHP 5.2.0
SQLite
MySQL 4.1.20

nadamas lo instalas, y ejecutas el programa Server2Go.exe y te habre una ventana de tu navegador con tu IP y un puerto, desde esta ventana puedes ejecutar tus htmls, si la cierras, tienes que ejecutar de nuevo el Server2Go.exe.

todos los documentos que cargues a tu servidor local, deberan estar en la carpeta donde instalaste el Server2Go, y subcarpeta HTDOCS

y eso es todo lo que tienes que hacer

Por gabynufe

Claber

446 de clabLevel



 

México, D.F.

msie7

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.