Avatar billede rocky2000 Nybegynder
19. oktober 2004 - 19:37 Der er 8 kommentarer og
1 løsning

hvordan virker PHPObject

Jeg er i gang med at lave et online spil i flash. Men når jeg henter værdier ind fra en DB kommer kun de 9 første resultater ind.

#include "PHPObject.as"
tmp = new PHPObject();
tmp.setDefaultGatewayKey("hemmelig");
// CHANGE THIS TO WHATEVER SECRET KEY YOU SET IN Gateway.php
tmp.setDefaultGatewayUrl("gateway.php");
// CHANGE THIS TO WHERE YOU PLACE Gateway.php
delete tmp;
myFoo = new PHPObject("cards");
// declare a new object and link it to a remote PHP class
// set up responder
myFoo.getcard_onResult = function(result) {
    //this.aaa.text = result[0];
    playerstats.playername.text = result[1];
    //this.ccc.text = result[2];
    //this.ddd.text = result[3];
    //this.eee.text = result[4];
    //this.fff.text = result[5];
    playerstats.playerlevel.text = result[5];
    playerstats.playergold.text = result[6];
    playerstats.playerclass.text = result[7];
    playerstats.playerxp.text = result[8];
    playerstats.playerrace.text = result[9];
};

Kan man istedet for at skrive result[?] så bare ikke skrive tabellens kolone for eksempel "playerstats.playerrace.text = $race"
Avatar billede rocky2000 Nybegynder
19. oktober 2004 - 19:42 #1
Nå nu fik jeg det til at virke med at den vil skrive "RACE" Det var en taste fejl. Men jeg er stadig åben overfor spørgsmål 2

Kan man istedet for at skrive result[?] så bare ikke skrive tabellens kolone for eksempel "playerstats.playerrace.text = $race"
Avatar billede barklund Nybegynder
19. oktober 2004 - 19:56 #2
Så vidt jeg husker PHPObject og remoting, så vil dit result object være lige det objekt, du sender i den anden ende. Hvordan ser din getcard funktion ud i PHP'en?
Avatar billede rocky2000 Nybegynder
19. oktober 2004 - 19:58 #3
<?php
class cards
{
    function getcard($getcard)
    {
        $db_name = "***";
        $connection = @mysql_connect("localhost", "***", "***") or die("Could not connect to database");
        mysql_select_db($db_name, $connection) or die("Count not select database");
        $query = "SELECT * FROM users WHERE ID = '10'";
        $q_result = mysql_query($query);
        return mysql_fetch_row($q_result);
    }
}
?>
Avatar billede barklund Nybegynder
19. oktober 2004 - 20:03 #4
mysql_fetch_row returnerer netop rækkerne som 0, 1, 2... mysql_fetch_assoc returnerer dem ved deres indekser i tabellen (altså attribut-navne i tabellen) og mysql_fetch_array returnerer et array med begge dele.

http://dk2.php.net/manual/en/function.mysql-fetch-assoc.php

Så mon ikke du bare skal rette funktionen?

--
Morten Barklund
Avatar billede rocky2000 Nybegynder
19. oktober 2004 - 20:10 #5
Så hvis jeg vil have variablen ud som $race istedet for result[10] så skal jeg skrive
<?php
class cards
{
    function getcard($getcard)
    {
        $db_name = "***";
        $connection = @mysql_connect("localhost", "***", "***") or die("Could not connect to database");
        mysql_select_db($db_name, $connection) or die("Count not select database");
        $query = "SELECT * FROM users WHERE ID = '10'";
        $q_result = mysql_query($query);
        return mysql_fetch_array($q_result);
    }
}
?>

Eller er jeg helt galt på den?
Avatar billede barklund Nybegynder
19. oktober 2004 - 20:11 #6
Nu bruger vi ikke php-syntaks i flash, så det vil hedder result.race eller result["race"] alt efter hvordan du foretrækker det :)
Avatar billede rocky2000 Nybegynder
19. oktober 2004 - 20:13 #7
Mange tak for dine svar. Jeg tror det hjalp lidt :)
Avatar billede barklund Nybegynder
19. oktober 2004 - 20:14 #8
Så lidt, jeg kaster et svar. Hvis det ikke virker, så spørg endelig videre :)
Avatar billede barklund Nybegynder
19. oktober 2004 - 20:15 #9
Hov, havde vist allerede kastet et svar, tark for points :)
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