Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

Flash Dynamische tekstvelden en PHP

Pagina: 1
Acties:

  • Raem
  • Registratie: Oktober 2005
  • Laatst online: 19:23
Ik wil inhoud vanuit een PHP pagina inladen in dynamische tekstvelden in Flash. Met één tekstveld werkt dat wel. Ik heb het tekstveld de Var naam 'FLnaam' gegeven en in PHP de volgende code gezet:

code:
1
2
$naam = "FLnaam=test";
print $naam;


Wanneer ik de Flash pagina nu uitvoer komt er netjes 'test' in het tekstveld te staan. Ik wil echter nog een tekstveld ernaast hebben en daarin andere inhoud laten tonen. Ik dacht dat dit gemakkelijk kon door nog een tekstveld toe te voegen en de PHP code wat uit te breiden.
Ik heb in Flash een nieuw dynamisch tekstveld aangemaakt waarvan de Var naam 'FLscore' is. In PHP heb ik de code uitgebreid naar:

code:
1
2
3
4
$naam = "FLnaam=test";
print $naam;
$score = "FLscore=test2";
print $score;


Als ik de Flash pagina nu uitvoer komt er alleen niks in het tweede tekstvlak te staan en in het eerste tekstvlak staat "testFLscore=test2". Hij print dus nog wel netjes die eerste, maar hij ziet die tweede blijkbaar als een hele string ofzo.

Heeft iemand enig idee hoe ik dit kan aanpassen? Ik kan waarschijnlijk wel een nieuwe PHP pagina aanmaken voor het tweede tekstvlak, maar het lijkt me makkelijker om alles gewoon in één pagina te hebben.

https://psnprofiles.com/RaemNL


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Duh; je zult ze moeten scheiden ;)

*kuch* &

Ik ben geen flash expert, maar het kan volgens mij ook in XML en JSON formaat.

[ Voor 74% gewijzigd door RobIII op 06-04-2008 20:05 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Raem
  • Registratie: Oktober 2005
  • Laatst online: 19:23
Bedankt voor je reactie, maar ik denk niet dat het op die manier gaat werken. Mijn openingspost heb ik een beetje simplistisch uitgelegd van wat ik wil, om duidelijk het probleem aan te geven.

Wat uitgebreider; het wordt een lijst met scores. In het linker tekstveld komen 10 namen van spelers te staan. En in het rechtertekstveld komen de scores te staan. Deze gegevens worden uitgelezen uit een database.

Wat ik via jouw google link heb gelezen op verschillende pagina's is dat je in het HTML bestand de waarde mee moet geven, maar dan kun je dus maar 1 statische waarde meegeven? Terwijl ik dus 10 dynamische waardes wil inladen.

De enige reden waarom ik de naam en score splits is voor de uitlijning. Ik kan het ook wel achter elkaar zetten, maar dan komt niet alles netjes onder elkaar te staan wat het nogal lastig leesbaar maakt. Ik heb het nu tijdelijk maar opgelost door gewoon voor beide tekstvelden een apart PHP bestand te maken waar Flash contact mee legt.

https://psnprofiles.com/RaemNL


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
naam1=jan&score1=123&naam2=piet&score2=456&naam3=...

Zo moeilijk is dat toch niet? Dat kun je gewoon door PHP laten uitpoepen; dat deed/doe je al, je mist enkel een separator...
Raem schreef op zondag 06 april 2008 @ 21:12:
Ik heb het nu tijdelijk maar opgelost door gewoon voor beide tekstvelden een apart PHP bestand te maken waar Flash contact mee legt.
Dus je roept voor iedere naam naam.php aan en voor iedere score nog eens score.php? Dat zijn 20 requests voor een highscorelijst :D

[ Voor 86% gewijzigd door RobIII op 06-04-2008 21:15 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Raem
  • Registratie: Oktober 2005
  • Laatst online: 19:23
Dus je roept voor iedere naam naam.php aan en voor iedere score nog eens score.php? Dat zijn 20 requests voor een highscorelijst :D
Nee, als het goed is niet. In Flash heb ik op het tekstveld de volgende code staan.

code:
1
2
3
onClipEvent (load) {
  loadVariables("naam.php", this, "GET");
}

Hij maakt dus één keer een request met naam.php. In naam.php staat vervolgens het volgende

code:
1
2
3
4
5
6
7
8
9
$naam = "FLnaam=";

do
{
$naam =  $naam . $row_score['naam'] . "\n";
}
while ($row_score = mysql_fetch_assoc($score));

print $naam;

(Met daarboven nog de SQL query etc.) $naam wordt hier dus gevuld met namen uit de database. En 'print' stuurt dit vervolgens weer terug naar Flash. En dit proces dan idd nog een keer voor de Scores.

Maar dat zijn dan toch geen 20 requests? Of heb ik dat mis? :P

https://psnprofiles.com/RaemNL


  • H004
  • Registratie: Maart 2006
  • Laatst online: 28-05 19:55
PHP:
1
2
3
4
5
6
7
8
$naam = "FLnaam=";
$score= "FLscore=";

while ($row_score = mysql_fetch_assoc($score)) {
  $naam =  $naam . $row_score['naam'] . "\n";
  $score =  $score . $row_score['score'] . "\n";
}
print $naam."&".$score;

Ofzo... Nu is het nog maar 1 request.

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Bij mijn weten moet je parameters scheiden met een ampersand, ik kan me vergissen, maar ik zie dus niet in waarom die \n erin staat... Als je gewoon zorgt dat je dit uitpoept (en dat kan prima met 1 query en 1 request naar die php dus) moet het volgens mij werken.

[ Voor 47% gewijzigd door RobIII op 06-04-2008 23:27 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Raem
  • Registratie: Oktober 2005
  • Laatst online: 19:23
Die \n zit erin zodat de namen onder elkaar komen te staan. De tien namen uit de database worden in $naam gezet. En $naam wordt in een tekstveld in flash gezet. Als die \n niet achter iedere naam komt, dan komen alle namen achter elkaar te staan in het tekstveld.

https://psnprofiles.com/RaemNL


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Om een of andere reden lees ik je topic steeds anders :X
...in dynamische tekstvelden in Flash
en daaruit concludeer ik dan 10x een naam-veld en 10x een score veld ;)
Maar dan nog blijft het feit staan dat je de 2(?? :P ) velden in dit geval moet scheiden; en dat doe je nog steeds met een ampersand (en again; ik zou het even moeten nazoeken zeker nu ik het zo stellig blijf volhouden :X maar pin me er dus niet op vast).

Dan wordt het dus jan\npiet\nklaas\n....\nmarie&928.398\n736.278\n719.238\n...\n100.001 ofzo.

[ Voor 55% gewijzigd door RobIII op 06-04-2008 23:47 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • H004
  • Registratie: Maart 2006
  • Laatst online: 28-05 19:55
RobIII schreef op zondag 06 april 2008 @ 23:44:
Maar dan nog blijft het feit staan dat je de 2(?? :P ) velden in dit geval moet scheiden; en dat doe je nog steeds met een ampersand (en again; ik zou het even moeten nazoeken zeker nu ik het zo stellig blijf volhouden :X maar pin me er dus niet op vast).

Dan wordt het dus jan\npiet\nklaas\n....\nmarie&928.398\n736.278\n719.238\n...\n100.001 ofzo.
Precies, vandaar ook
PHP:
1
2
print $naam."&".$score;
// resulteert in FLnaam=jan\npiet\nklaas\n....\nmarie&FLscore=928.398\n736.278\n719.238\n...\n100.001

Je moet dan wel 2 dynamische tekstvelden in flash hebben en de linker (?) FLnaam laten uitlezen, en de rechter FLscore.

Je vertrouwt nu alleen wel in alleen op \n om alle namen en scores precies onder elkaar terecht te laten komen. De methode van RobIII (naam1=jan&score1=1999&naam2=piet&score2=8745 icm met 10 naam-velden en 10 score-velden) heeft daarom ook sterk mijn voorkeur, zodat - mocht er ergens een naam ontbreken of iemand \n als naam invullen - de namen en scores wel precies goed uitgelijnd blijven.

[ Voor 12% gewijzigd door H004 op 06-04-2008 23:59 ]


  • Raem
  • Registratie: Oktober 2005
  • Laatst online: 19:23
Hehe, misschien was het niet helemaal duidelijk wat ik bedoelde. Maar het zijn inderdaad twee tekstvelden. Enig nadeel van de manier van RobIII imo is dat het meer werk is om uit te breiden. Stel dat ik bijvoorbeeld in de toekomst de hoogste 20 of 30 scores wil laten zien. (Of alle scores). Dan moet ik opnieuw allemaal tekstvelden aanmaken. Met die manier zoals ik het nu heb hoef ik alleen de SQL querie aan te passen en het tekstveld te vergroten. Maar goed, dat is weer wat anders. :P

Maar met hetgeen wat jullie nu verteld hebben kom ik er wel uit. Bedankt! :)

https://psnprofiles.com/RaemNL

Pagina: 1