-
[flash] split e as
ciao a tutti! rieccomi con un'altro flash-problem :D :mrgreen:
Nel mio filmato flash ho un'area di testo dinamico, chiamata mess..
come action script ho inserito:
loadVariablesNum ("mess.txt?r="+random(100000), 0, "GET");
var lol:Array = mess.split("(\/)");
for (var i = 0; i<lol.length; i++) {
var ora:Array = lol.split("(//\)");
for (var i = 0; i<ora.length; i++) {
var mess = ora<1>;
}
}
in teoria dovrebbe caricarmi la variabile mess presente nel file mess.txt , eseguire vari split e riassegnare alla variabile mess il valore di ora<1>...
Il problema è che nel campo di testo dinamico vedo comunque tutto il contenuto della variabile, senza i vari split.. cosa c'e' di spagliato?
Grazie a tutti!
ciauz
PS: mess.txt
Codice:
mess=060531144809(/|\)<b>xxx</b><br>prova<br>(\/)060531145331(/|\)<b>giaco</b><br>ok proviamo tutt ok<br>(\/)060531145550(/|\)<b>xxx</b><br>a rimortacci<br>(\/)060531145602(/|\)<b>xxx</b><br>azzz<br>(\/)060531145603(/|\)<b>xxx</b><br>z<br>(\/)
-
Prova innanzitutto ad usare nomi diversi per le variabili (campo dinamico, var nel txt, "i" nei cicli, ecc.).
Se ancora non risolvi (non posso provare il tuo script e sono di passaggio) posta di nuovo.
PS: occhio ai titoli!
Ciaoooo!!!!
-
azz il problema è piu grave.. avendo provato a rinominare tutto il rinominabile (senza successo), ho tagliato l'as per fare delle prove..
loadVariablesNum ("mess.txt?r="+random(100000), 0, "GET");
var messaggio:Array = _root.mess.split("(\/)");
_root.mess = messaggio[0];
con questo codice mi compare comunque tutto il contenuto della variabile mess (contenuta nel file txt)... come è possibile?
EDIT: ricapitolo
campo di testo dinamico -> mess
variabile nel txt -> mess=
as: loadVariablesNum ("mess.txt?r="+random(100000), 0, "GET");
e vedo tutto quanto..
se per esempio rinomino il campo di testo dinamico, chiamandolo ad esempio "msg" e nell'as sotto a load metto mess = msg, _root.mess = _root.msg, var mess = var msg o tutte le combinazioni possibile con questi due identificatori non vedo + nulla :(
-
E' normale, perchè la var nel txt e il nome del campo devono coincidere.
Invece per capire se riesce a trovare quella serie di caratteri potresti provare con indexOf().
Ciaooooo!!!!!
-
EDIT:
ho provato una soluzione alternativa...
ho un file php che se aperto via browser mi crea la variabile $stringa che contiene quello che voglio mostrare...
Posso richiamare via flash la variabile stringa contenuta in quel file (che comunque viene generata all'apertura del suddetto) e inserirla nell'input dinamico?
pag php
Codice PHP:
<?php
session_start();
$entrata = $_SESSION['entrata'];
$nick = $_SESSION['nick'];
$fopen = fopen("mess.txt", "r+");
$dim = filesize("mess.txt");
$contenuto = fread($fopen, $dim);
$explode = explode("(\/)", $contenuto);
$totale = count($explode);
$semitotale = $totale-1;
foreach ($explode as $explo) {
if ($explo[$semitotale] != "") {
$explode2 = explode("(/|\)", $explo);
if ($explode2[0] > $entrata) {
$stringa .= "".$explode2[1]."";
}
}
}
echo $stringa;
?>
-
Nel frame usa questo:
Codice:
_root.onEnterFrame=function(){
if(ciao==undefined){
loadVariablesNum('mess.txt',0);
}else{
trace(mess)
delete _root.onEnterFrame
}
}
in questo modo capirai come funziona.
Dopo di che puoi sostituire quel trace con quello che ti serve.
EDIT: ops non avevo visto il tuo edit, quindi questa è la risposta al topic iniziale
Ciaooo!!!!!!
-
cavolo... per la soluzione due?
scusa se ti scasso :D
-
In che senso per la soluzione due?
Hai provato quello che ti ho scritto nell'ultimo post?
Quella è la soluzione per il problema a monte, quindi che, almeno in teoria, sostituisce la "soluzione due".
Quella è la strada giusta.
Ciaooo!!!!!
-
mmmm diciamo che ho messo quel codice ma vedo comunque tutto il contenuto della stringa, e non ho capito a cosa serva :confused: azzz
per soluzione due intendevo che ho un file php che ha come output la stringa corretta, ho provato alcune guide.. in pratica:
AS -> loadVariablesNum ("mess.php?r="+random(100000), 0, "GET");
PHP mess.php output -> echo '&stringa='.$num;
in questo modo nel campo di testo di flash vedo la scritta '.$num; e non riesco a capire come far leggere la variabile $num... Se riuscissi a risolvere questo problema sarei a posto.. :(