Comunidad de diseño web y desarrollo en internet online

mi primer vez y trato de apreder "Buenas estoy un poco perd"

Citar            
MensajeEscrito el 10 Ago 2009 02:33 pm
mi problema es que no consigo el envio de un id desde un menu dinamico en flash que carga desde un xml, el xml en base es un php que se convierte en un xml despues de realizar la consulta a mi base de datos, este php toma los datos y los convierte en un xml, luego flash lee este php y me carga de manera correcta el menu y el sub menu
la verdad no entiendo mucho actionscript y he logrado que me funcione bien hasta que me carge los swf que requiero pero no logro enviar por POST el id para que me realize la carga definida por el ID de la base de datos que me define la informacion e imagenes a cargar

:?

Codigo flash

Código ActionScript :

function addButtons()
{
var stuff2 = new Array();
var named2 = new Array();
var windows2 = new Array();
var id2 = new Array();
var idname = new Array();
var _loc4 = holder.buttons.length;
for (i = 0; i < _loc4; i++)
{
btn = buttons.attachMovie("menu", "menu" + i, i);
btn.name = i;
buttons["menu" + i]._x = i * buttons["menu" + i]._width;
buttons["menu" + i].name = i;
btnsArray.push(btn);
gs.TweenLite.to(buttons["menu" + i].parentButton.parentBG, 0, {tint: xml.firstChild.attributes.mainButtonColor});
btn.itemOverColor = holder.buttons[i].attributes.itemRollOverColor;
btn.itemColor = holder.buttons[i].attributes.itemColor;
btn.main = holder.main.attributes.subButtonColor;
btn.parentButton.name = i;
btn.parentButton.nameTXT.text = holder.buttons[i].attributes.title;
btn.parentButton.nameTXT.textColor = btn.itemColor;
btn.parentButton.onRollOver = function ()
{
this.nameTXT.textColor = xml.firstChild.childNodes[this.name].attributes.itemRollOverColor;
};
btn.parentButton.onRollOut = function ()
{
this.nameTXT.textColor = btn.itemColor;
};
btn.parentButton.onPress = function ()
{
if (named2[this.name] == "link")
{
getURL(stuff2[this.name], windows2[this.name]);
} // end if
if (id2[this.name] == "id")
{
xml.send("xml/onlyinfo.php", xml, "POST");
} // end if
if (named2[this.name] == "swf")
{
_root.pagesHolder.loadMovie(stuff2[this.name]);
} // end if
if (named2[this.name] == "goto")
{
_root.gotoAndPlay(stuff2[this.name]);
} // end if
};
if (holder.buttons[i].attributes.link != undefined)
{
named2.push("link");
stuff2.push(holder.buttons[i].attributes.link);
windows2.push(holder.buttons[i].attributes.windows);
}
else if (holder.buttons[i].attributes.id != undefined)
{
idname.push("id");
id2.push(holder.buttons[i].attributes.id);
}
else if (holder.buttons[i].attributes.swf != undefined)
{
named2.push("swf");
stuff2.push(holder.buttons[i].attributes.swf);
}
else if (holder.buttons[i].attributes.goto != undefined)
{
named2.push("goto");
stuff2.push(holder.buttons[i].attributes.goto);
} // end else if
btn.menuItems = new Array();
btn.stuff = new Array();
btn.named = new Array();
btn.idn = new Array();
btn.idname = new Array();
btn.windows = new Array();
for (j = 0; j < holder.buttons[i].childNodes.length; j++)
{
btn.menuItems.push(holder.buttons[i].childNodes[j].attributes.title);
if (holder.buttons[i].childNodes[j].attributes.link != undefined)
{
btn.named.push("link");
btn.stuff.push(holder.buttons[i].childNodes[j].attributes.link);
btn.windows.push(holder.buttons[i].childNodes[j].attributes.windows);
} // end if
if (holder.buttons[i].childNodes[j].attributes.id != undefined)
{
btn.idn.push("id");
btn.idname.push(holder.buttons[i].childNodes[j].attributes.id);
} // end if
if (holder.buttons[i].childNodes[j].attributes.swf != undefined)
{
btn.named.push("swf");
btn.stuff.push(holder.buttons[i].childNodes[j].attributes.swf);
} // end if
if (holder.buttons[i].childNodes[j].attributes.goto != undefined)
{
btn.named.push("goto");
btn.stuff.push(holder.buttons[i].childNodes[j].attributes.goto);
} // end if
} // end of for
} // end of for
} // End of the function
function xmlLoad()
{
spacingBeforeMenu = xml.firstChild.attributes.spacingBeforeMenu;
gs.TweenLite.to(blackBG, 0, {tint: xml.firstChild.attributes.barsColor});
gs.TweenLite.to(btn.parentButton, 0, {tint: xml.firstChild.attributes.barsColor});
gs.TweenLite.to(btn.parentButton, 2, {tint: xml.firstChild.childNodes[0].attributes.bgColor});
gs.TweenLite.to(_root.mainBackground.mainBackgroundCover, 2, {tint: xml.firstChild.childNodes[0].attributes.bgColor});
logoHolder._x = 0;
logoHolder._y = 0;
logoHolder.logoBG.loadMovie(xml.firstChild.attributes.logo);
_root.pagesHolder.loadMovie(xml.firstChild.attributes.initialPage);
buttons._x = cover._x + spacingBeforeMenu;
buttons._y = cover._y;
holder.buttons = xml.firstChild.childNodes;
holder.main = xml.firstChild;
horSpacing = Number(xml.firstChild.attributes.horSpacing);
addButtons();
verSpacing = Number(xml.firstChild.attributes.verSpacing);
} // End of the function
stop ();
var xml = new XML();
xml.System.useCodepage = true;
xml.ignoreWhite = true;
xml.load("xml/menu.php");
xml.onLoad = xmlLoad;
var spacingBeforeMenu;
var holder = new MovieClip();
buttons._x = 450;
buttons._y = 90;
var btnsArray = new Array();


codigo php que me carga el menu

Código :

<?php
function conectar()
{
//echo phpinfo();
require('../adminis-cms/conf/configuracion.php');
if (!($enlaze=mysql_connect("$sql_host", "$sql_usuario", "$sql_pass")))
{
echo "Error conectando a la base de datos.";
exit();
}
if (!mysql_select_db($sql_db,$enlaze))
{
echo "Error seleccionando la base de datos.";
exit();
}
return $enlaze;
}
$cone=conectar();
$sentencia = "SELECT * FROM menu ORDER BY menu.id ASC";
$pregunta=mysql_query($sentencia,$cone);
//$inv='formulario';
if (!$pregunta)
{
die('No hay datos:' . mysql_error());
}
else
{
$combo="<menu verSpacing='".(5)."' horSpacing='".(0)."' spacingBeforeMenu='".(0)."' textOver='".(0x00BBDD)."' subButtonColor='".(0x000000)."'>";
//$combo= $combo . "";
while ($res = mysql_fetch_row($pregunta))
{
$combo.= "<item title='". $res[1] ."' itemColor='".(0x000000)."' itemRollOverColor='".(0xFFCD00)."' bgColor='".(0x00BBDD)."'>";
$sqlsubmenu = "SELECT submenu.submenu, submenu.swf, submenu.id FROM submenu WHERE submenu.idmenu = '$res[0]'";
$consubmenu = mysql_query($sqlsubmenu,$cone);
while ($ressubmenu = mysql_fetch_row($consubmenu))
{
$combo .= "<subitem title='". $ressubmenu[0]."' swf='". $ressubmenu[1]."' id='". $ressubmenu[2]."' />";
}
$combo.="</item>";

}
$combo.="</menu>";
}
header("Content-type:application/xml enswf=utf-8");
echo utf8_decode($combo);
?>


resultado de la convercion del php a XML

Código :

<menu verSpacing="5" horSpacing="0" spacingBeforeMenu="0" textOver="48093" subButtonColor="0">
<item title="Home" itemColor="0" itemRollOverColor="16764160" bgColor="48093"/>
<item title="Only Pet Shop" itemColor="0" itemRollOverColor="16764160" bgColor="48093">
<subitem title="Quienes Somos" swf="swf/onlyinfo.swf" id="1"/>
<subitem title="Que Hacemos" swf="swf/onlyinfo.swf" id="2"/>
</item>

<item title="Servicios" itemColor="0" itemRollOverColor="16764160" bgColor="48093">
<subitem title="Consulta Veterinar�a" swf="" id="3"/>
<subitem title="Perruquer�a" swf="" id="4"/>
<subitem title="Clases para Cachorros" swf="" id="5"/>
<subitem title="Venta de Mascotas" swf="" id="6"/>
<subitem title="Adiestramiento" swf="" id="7"/>
</item>

<item title="Boutique" itemColor="0" itemRollOverColor="16764160" bgColor="48093">
<subitem title="Prendas" swf="" id="8"/>
<subitem title="Juguetes" swf="" id="9"/>
<subitem title="Accesorios" swf="" id="10"/>
<subitem title="Alimentos" swf="" id="11"/>
<subitem title="Golosinas" swf="" id="12"/>
</item>

<item title="Razas" itemColor="0" itemRollOverColor="16764160" bgColor="48093">
<subitem title="Perros" swf="" id="13"/>
<subitem title="Gatos" swf="" id="14"/>
</item>

<item title="Contactenos" itemColor="0" itemRollOverColor="16764160" bgColor="48093">
<subitem title="Ubicaci�n" swf="" id="15"/>
<subitem title="Comentarios" swf="" id="16"/>
</item>
</menu>


y este es el codigo a donde requiero que me envie el ID por POST

Código :

<?php
require('../adminis-cms/conf/configuracion.php');
function conectar(){
//echo phpinfo();
require('../adminis-cms/conf/configuracion.php');
if (!($enlaze=mysql_connect("$sql_host", "$sql_usuario", "$sql_pass")))
{
echo "Error conectando a la base de datos.";
exit();
}
if (!mysql_select_db($sql_db,$enlaze))
{
echo "Error seleccionando la base de datos.";
exit();
}
return $enlaze;
}
$cone=conectar();
$sentencia = "SELECT * FROM cont WHERE cont.id = '".$_POST['idname']."'";
$pregunta=mysql_query($sentencia,$cone);
//$inv='formulario';
if (!$pregunta)
{
die('No hay datos:' . mysql_error());
}
else
{
$res = mysql_fetch_row($pregunta);
$foto = "imagenes/contenido/temp/".$res[4];
$combo.= "<cont><cont_text id='". $res[0] ."' foto='". $foto ."'>". $res[3] ."</cont_text></cont>";
}
header("Content-type:application/xml enswf=utf-8");
echo utf8_decode($combo);
?>


les agradeceria su ayuda para sobrepasar este problemita
y mis disculpas por mi falta de conocimiento para el manejo de temas en el foro ire mejorando y tratando de aportar lo que este en mi alcanzeççgracias de nuevo

PD: A si pueden borrar o me explican como hacerlo el anterior publicacion

Hugo.
[email protected]

Por munrraa

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 11 Ago 2009 01:19 am
hola.
ya logre que me funcione pero sin el envio de valores por POST sino por GET pero igual me gustaria aprender un poco de como se puede hacer y no quedarme con la duda de igual manera gracias por la ayuda que me puedan brindar

Hugo

Por munrraa

3 de clabLevel



 

firefox

 

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