Avatar billede ostekage Nybegynder
25. december 2001 - 23:20 Der er 42 kommentarer og
2 løsninger

Underlige variabler!


Hej.

Er der nogen der har haft problemer med indlæste varibler fra f.eks php, via loadvariablesnum.

Det virker som om at jeg ikke altid kan \"anvende\" de variabler jeg får indlæst.

En ganske sædvanlig:
?>
echo \"id=5\";
<?

Kan jeg efter loadvariablesNum, ikke anvende i en:
   
if (id) {
        gotoAndPlay (\"start\");
    } else {
        gotoAndPlay (\"loopagain\");
    }

(id bliver aldrig sand!)
Det underlige er at jeg godt kan skrive variablen ud i et tekstfelt, så den ER tilstede.
Geo forslog tidligere at bruge eval(), og det hjalp tildels også..... Et stykke tid...(?!?!)

Jeg vil bare gerne vide om der er et eller andet fis med indlæste variabler, et eller andet med at de kommer ind som strings eller lignende?

Hjælp!
Ostekage.



Avatar billede lingoman Nybegynder
25. december 2001 - 23:30 #1
Se om ikke der her skulle hjælpe ved at tvinge et tal ud af en evt. streng værdi

if (Number(id)) {...

Desuden er det alt for mange point du afsætter til dette spørgsmål...
Avatar billede ostekage Nybegynder
25. december 2001 - 23:36 #2
Jeg prøver lige...

For mange points?
Jeg har siddet med den variabel verification hele dagen, så jeg er løshåndet. :)
Avatar billede ostekage Nybegynder
25. december 2001 - 23:40 #3
hm, funker ikke :(
Avatar billede lingoman Nybegynder
25. december 2001 - 23:42 #4
...eller måske

f (Number(eval(id))) {...

du er helt sikker på at id er læst ind ?
Avatar billede ostekage Nybegynder
25. december 2001 - 23:44 #5

Jeps, jeg kan skrive den ud i et textfield...
Og jeg har jo en:

if (id) {
        gotoAndPlay (\"start\");
    } else {
        gotoAndPlay (\"loopagain\");
    }

Der kører indtil php scriptet er færdig.

Har lige læst noget om at onClipEvent(data) måske kan bruges?
Avatar billede lingoman Nybegynder
25. december 2001 - 23:50 #6
Så skal du nok bruge loadVariables() i stedet.. loadVariablesNum indlæser jo ind i et target level og ikke mc.
Hvor befinder din action sig, og hvilket level indlæses dine data til ?

Prøv lige en sidste gang med

if (Number(eval(\"id\"))) {...
Avatar billede ostekage Nybegynder
25. december 2001 - 23:51 #7

alt foregår i root
Avatar billede ostekage Nybegynder
25. december 2001 - 23:56 #8

Nej, det virker desværre stadig ikke...
Avatar billede lingoman Nybegynder
25. december 2001 - 23:56 #9
Det vil sige at du bruger noget a la

loadVariablesNum(\"dinPHP.php\",0);

Ingen held med eval(\"id\") ?
Avatar billede lingoman Nybegynder
26. december 2001 - 00:03 #10
Hvad bruger du som level argument i loadVariablesNum() og er dit php script instillet til at sende MIME-type som URL encoded data ?

Avatar billede ostekage Nybegynder
26. december 2001 - 00:08 #11

Altså, jeg har 2 loadVariablesNum til 2 php scripts, men kun den sidste virker.

Det første sender et username og password til php som retunerer brugerens id fra database.
Bliver echo\'et ud som:
echo \"id=$ID\";

Derefter kommer en ny loadVariablesNum der fra php henter id,navn og status på alle indlogggede brugere. (Denne sidste loadVariablesNum virker)

Det underlige er, at det pludslig ikke virkede længere, for den første loadVariablesNum...

puha...


Avatar billede ostekage Nybegynder
26. december 2001 - 00:13 #12

lvl:
loadVariablesNum (\"login.php\", 0, \"POST\");

hm, hvordan indstillet?

Avatar billede lingoman Nybegynder
26. december 2001 - 00:15 #13
Er det ikke bare den tidligere variabel som bliver overskrevet når du udfører 2. loadVariablesNum() ? Hvad med at gemme den første under et andet navn
loadVar 1
myPrivateCopy = eval(\"id\");
loadvar 2
///

test ... på myPrivateCopy i stedet for \"id\"
Avatar billede ostekage Nybegynder
26. december 2001 - 00:18 #14
nej, det er vidt forskellige variabelnavne...
Avatar billede ostekage Nybegynder
26. december 2001 - 00:18 #15
har også prøvet at teste på en \"overført\" variabel... no luck
Avatar billede lingoman Nybegynder
26. december 2001 - 00:22 #16
Jeg er vist  ikke helt med...

Så vidt jeg har forstået har du først en

loadVariablesNum (\"login.php\", 0, \"POST\"); // denne indlæser fks. \"id=5\"

Så har du en ny kommando

loadVariablesNum (\"login.php\", 0, \"POST\"); // som indlæser flere variabler og denne virker

Hvad siger du så sker med den først indlæste variabel ?
Avatar billede lingoman Nybegynder
26. december 2001 - 00:28 #17
Prøv at hive fat i nikolaj. Han har styr på det her. skriv en mail til ham med en reference til dette spørgmål
flasher@nikolajdu.dk

mvh geo
Avatar billede nikolajdu Nybegynder
26. december 2001 - 00:29 #18
Was was??
Avatar billede ostekage Nybegynder
26. december 2001 - 00:29 #19

http://www.escalator.nu/lobby/index.html

user: asd
pass: asd

og

http://www.escalator.nu/lobby/lobby.fla

Hvis du har lyst...

Efter at man har trykket login, kan man lige se id i et tekstfield, før if\'en erklærer den ugyldig... og hopper tilbage til login...
Har prøvet at hårdkode id i flash til f.eks id=2, og derefter virker det fint..

Der er noget rod med nogle pseudoarrays i slutningen... det skal der lige rydes op i senere... :)

Avatar billede ostekage Nybegynder
26. december 2001 - 00:32 #20

Hej nikolajdu!

Please help me! :)
Avatar billede nikolajdu Nybegynder
26. december 2001 - 00:34 #21
Yes yes kigger lige på det :))
Avatar billede lingoman Nybegynder
26. december 2001 - 00:34 #22
nikolaj>> det er noget med at en variabel \"id\" indlæst via
loadVariablesNum(\"login.php\", 0, \"POST\");
ikke kan bruges i en
if (id) {...
id bliver ikke godtaget som en defineret variabel så vidt jeg har forstået...
Avatar billede ostekage Nybegynder
26. december 2001 - 00:34 #23
korrekt! :)
Avatar billede nikolajdu Nybegynder
26. december 2001 - 00:59 #24
Prøv den her .fla

www.nikolajdu.dk/xpert/lobby.fla

Som du kan se har jeg ændret lidt i opbygningen.

1. Alle frameactions røg i et lag for sig selv. (Mere overskueligt)
2. Labels for sig selv = (Mere overskueligt)

Dit problem var at du 3 frames i træk havde et felt der hed ID. Hver gang variablen blev loadet ind i første frame blev den overskrevet inden der nåede at tjekkes på den.

/Nikolaj
Avatar billede lingoman Nybegynder
26. december 2001 - 01:02 #25
hehe,..det er vist ved at blive en vane det her nikolaj ;) Tak for hjælpen :)
Avatar billede lingoman Nybegynder
26. december 2001 - 01:03 #26
Sov godt alle sammen!
Avatar billede ostekage Nybegynder
26. december 2001 - 01:05 #27

Den er godt nok flot, men den virker desværre stadig ikke :(

Du kan se den online på:
http://www.escalator.nu/lobby/index.html
Avatar billede nikolajdu Nybegynder
26. december 2001 - 01:05 #28
Lingo - I lige måde da.

Ost - Du får et svar, men giv gerne lingo noget som tak for hans forsøg :))
Avatar billede nikolajdu Nybegynder
26. december 2001 - 01:07 #29
Den virker hos mig, men jeg kan ikke komme videre med at teste, da jeg manger den næste php-fil. Der går den i stå nu.

Og det har jeg ganske svært ved at finde ud af uden at vide hvilke variabler du kalder :))
Avatar billede ostekage Nybegynder
26. december 2001 - 01:13 #30
login.php:

<?
    include \'globals.inc.php\';
    $db=mysql_pconnect(\"localhost\",\"$l_user\",\"$l_pass\");
    mysql_select_db(\"$database\");
    $sql=\"SELECT * FROM g_user WHERE name=\'$user\' AND pass=\'$pass\'\";

    $result=mysql_query($sql,$db);

    if(list($ID,$user,$pass)=mysql_fetch_row($result))
    {
        $sql=\"INSERT INTO g_lobby (UID,name,status) \".
            \"VALUES(\'$ID\',\'$user\',\'0\')\";
        $result=mysql_query($sql,$db);
        echo \"id=\".urlencode($ID);
    }
    else
    {
        echo \"id=\".urlencode(0);
    }
?>

-------------

lobbylist.php:

<?
    include \'globals.inc.php\';
    $db=mysql_pconnect(\"localhost\",\"$l_user\",\"$l_pass\");
    mysql_select_db(\"$database\");
   
    $sql=\"SELECT * FROM g_lobby WHERE UID!=$id\";
   
    $result=mysql_query($sql,$db) or die(\"fail on $sql\");
    $cnt=0;
   
    while(list($UID,$name,$status,$chal)=mysql_fetch_row( $result))
    {
        echo \"ids[$cnt]=$UID\";
        echo \"&names[$cnt]=$name\";
        echo \"&status[$cnt]=$status&\";
        $cnt++;
    }
    echo\"ok=1\";
    echo\"&total=$cnt\";
?>

eksempel på outputs:
http://www.escalator.nu/lobby/login.php?user=ert&pass=ert

http://www.escalator.nu/lobby/lobbylist.php?id=3


----

Hvordan giver jeg \"nogle\" points til lingoman? :)
Avatar billede nikolajdu Nybegynder
26. december 2001 - 01:16 #31
Venter på han smider et svar, men vent til vi har fået løst problemet.

Du kan se den her nu.

http://212.242.116.208/testMe/lobby.swf

Har bare lavet en fil der gav ok=1
Avatar billede ostekage Nybegynder
26. december 2001 - 01:20 #32
jo, men problemet opstår også først i min sammenhæng.
Har prøvet at hårdkode et id, men det hjælper mig jo ikke meget, da den stadig ignorerer id\'et fra scriptet i if\'en.
Avatar billede ostekage Nybegynder
26. december 2001 - 01:33 #33

Nu virker det tilsyneladende.... igen...
Tusind tak for hjælpen...

Jeg venter lige med at give points så lingoman kan poste et svar og få lidt :)
Avatar billede nikolajdu Nybegynder
26. december 2001 - 01:34 #34
Fint. Hvad var problemet??
Avatar billede ostekage Nybegynder
26. december 2001 - 01:37 #35

Gid jeg vidste det :)
Avatar billede lingoman Nybegynder
26. december 2001 - 01:38 #36
Vil blive glad for et symbolsk antal point til mig. Jeg løste jo ikke noget :)
Nikolaj>> Hvad synes du om mit sidste indlæg til iGroup ?
Avatar billede lingoman Nybegynder
26. december 2001 - 01:39 #37
:)
Avatar billede nikolajdu Nybegynder
26. december 2001 - 07:05 #38
Lingo - tager den i morgen. Er lidt bange for at for meget konkurrence kan ødelægge idéen :))
Avatar billede ostekage Nybegynder
26. december 2001 - 15:54 #39
takker for hjælpen...

men et nyt problem (i samme forbindelse)er dukket op.
Når jeg skal indlæse variabler 2. gang har et par variabler der nægter at blive indlæst fra mit php-script, hvis jeg i mit script siger:

echo \"flag=1\";

så fungerer det, men da jeg skal hente det fra en db siger jeg:

echo \"flag=$dbflag\";

og det virker ikke????

jeg har testet outputtet i begge tilfælde giver de præcis det samme resultat..
Avatar billede lingoman Nybegynder
26. december 2001 - 15:56 #40
Tak for point :)
Avatar billede lingoman Nybegynder
26. december 2001 - 16:00 #41
Får du ikke strengen \"$dbflag\" som svar ?
Avatar billede ostekage Nybegynder
26. december 2001 - 17:42 #42
jo, men den virker ikke i flash....
Avatar billede nikolajdu Nybegynder
26. december 2001 - 18:16 #43
prøv med:

echo \"result=\".urlencode(\"$dbflag\")
Avatar billede nikolajdu Nybegynder
26. december 2001 - 18:17 #44
hov skal lige være flagdag :))

echo \"flag=\".urlencode(\"$dbflag\")
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester