14. marts 2003 - 23:07Der er
21 kommentarer og 2 løsninger
Hente variable fra mysql database.
Jeg har en top på en hjemmeside hvori der ligger en flashting. I den ting skal jeg bruge det højest tal fra et felt i en mysql database. Kan jeg undgå at skulle igennem asp/php?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Flash kan ikke trylle og gætte dine php-variabler... Det eneste flash kan er, at læse outputtet fra dit php-script.
Altså skal du i php printe dine variabler som:
variabel1=vaerdi1&variabel2=vaerdi2&...
I din situation:
print "vaegt=120";
Desuden kommer variablerne ikke ind i flash øjeblikkeligt. Det går nogle millisekunder og flash scriptet venter ikke mens den loader, så du er selv nødt til at tjekke, hvornår variablerne er loaded ind. Din approach med en enterFrame er selvfølgelig også en udmærket løsning. Du skal bare loade dine variabler ind i _root.controller med loadVariables og så burde det virke...
Nu ser mit php-dokument således ud: <? $link=mysql_connect("localhost","",""); mysql_select_db("kongeborgen_dk"); $resultat = mysql_query("select * from projekt90"); $raekke = mysql_fetch_row($resultat) print "vaegt=",$raekke[vaegt]); ?>
i frame 1 i flash har en et mc med navnet controller med følgende: onClipEvent(load) { loadVariablesNum("index.php", 0); }
i frame 2 er: if (_root.controller.vaegt <> "") { gotoAndPlay(3);
} else { gotoAndPlay(1); } i frame 3: stop(); samt et dynamisk tekstfelt med variabel-navnet: _root.controller.vaegt
Jaa... det skal dog være et "." istedet for et "," som konkateneringsoperator i php-scriptet i din print... derudover er der vist og en parentes for meget.
Du kan teste at dit php-script har det rigtige output ved at køre det direkte i browseren hvor det skal outputte variabler som tidligere beskrevet.
Din approach i flash er næsten rigtig. Du skal blot loade variablerne ind i controller-movieclippet og ikke ind i level0, for så ligger de helt ud i root:
loadVariables("index.php",_root.controller);
Derudover er "<>" flash4-syntax - brug hellere det mere korrekte "!=", selvom det andet selvfølgelig også virker...
Jeg forstår ikke? Hvad mener du med, at den "henter den php-fil, som jeg henviser til" - den skal vel hente php-filen for at kunne læse variablen? Du har vel både en htmlside med flashfilmen og en anden side med dit php-script - det skal jo være to separate filer...
Det er seperate filer og når jeg kører den fil med flashfilmen i, så åbner den php-dokumentet som havde jeg trykket på et link for at åbne noget i et nyt vindue.
Ja. I frame et har jeg et mc der er navngivet controller. På dette mc ligger onClipEvent(load) { loadVariables("index.php", _root,controller); } og alligevel åbener den et nyt vindue, hvori der står: vaegt=121
Damn, har endelig fået det til at virke. Efter samtlige kombinationer af de forskellige metoder, samt div gåseøjne, situationestegn og jegskagidaskaja...
i første frame skriver du dette: loadVariables("udskriv_minvar_side.asp", "_root);
i næste frame har du et tekstfelt der bare viser en variabel, kun ved hjælp af navnet på den variabel du skal have udskrevet, som du kender i forvejen. f.eks. hvis .asp filen udskriver: minvar=Yamojndo Skal det dynamiske tekstfelt bare udskrive var: minvar
hov...(nu med ekstra '"' ) loadVariables("udskriv_minvar_side.asp", "_root");
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.