recupero variabile e invio a php


Nuovo Utente
5 Mar 2007
Ciao a tutti!
Non so più dove sbattere la testa!
Dovrei inviare una variabile, score, ad un form in php per registrarla poi in un database.
Non riesco pero' a farla passare a php..
Sapete darmi una mano ?
Qui il codice
Stage.align = "tl";//aligns flash top left
Stage.scaleMode = "Scale";//makes objects not stretch when page is resized

//define vars
var segmentNumber:Number = 0;
var segmentLength:Number = new Number;
var segmentDistance:Number = new Number;
var currentSegX:Number = new Number;
var currentSegY:Number = new Number;
var currentSegR:Number = new Number;
var turnIncriment:Number = new Number;
var speed:Number = new Number;
var addSegInc:Number = 7;
var yumNum:Number = 0;
var numberOfSegs:Number = new Number;
var score:Number = 0;
var scoreInc:Number = 10;

//get xml
var snakeGameXML:XML = new XML();
snakeGameXML.ignoreWhite = true;
snakeGameXML.onLoad = function(bSuccess:Boolean):Void  {
	if (bSuccess) {
		//get the variables from the xml
		segmentLength = Number(snakeGameXML.firstChild.attributes.segmentLength);
		segmentDistance = Number(snakeGameXML.firstChild.attributes.segmentDistance);
		startSegX = Number(snakeGameXML.firstChild.attributes.currentSegX);
		startSegY = Number(snakeGameXML.firstChild.attributes.currentSegY);
		startSegR = Number(snakeGameXML.firstChild.attributes.currentSegR);
		turnIncriment = Number(snakeGameXML.firstChild.attributes.turnIncriment);
		speed = Number(snakeGameXML.firstChild.attributes.speed);
		gameHeight = Number(snakeGameXML.firstChild.attributes.gameHeight);
		gameWidth = Number(snakeGameXML.firstChild.attributes.gameWidth);
		timeBetweenElongate = Number(snakeGameXML.firstChild.attributes.timeBetweenElongate)* 1000;
		trace("xml did not load, use defaults");
		//these are the default vars for if you aren't using the xml. 
		segmentLength = 500;
		segmentDistance = 7;
		startSegX = 100;
		startSegY = 30;
		startSegR = 90;
		turnIncriment = 5;
		speed =3;
		gameHeight = Stage.height;
		gameWidth = Stage.width;
		timeBetweenElongate = 1000;

function createInterface(){
	this.attachMovie("header", "header_mc", 43, {_x:gameWidth - 250, _y:5});//this is where the score is
	this.createEmptyMovieClip("pointsScoredGroup_mc", 44);//this is where the +10 goes when you hit an apple

function createRipple(){
	this.createEmptyMovieClip("ripples_mc", 55);//create mc for ripples
	var rippleNum:Number = 0;
	ripple = new Object();
	ripple.interval = function() {
		var randomX:Number = Math.round(Math.random()* (gameWidth - 40))+20;//random x and y for ripple
		var randomY:Number = Math.round(Math.random()* (gameHeight - 40))+20;
		var rippleScale:Number = Math.round(Math.random()* 80)+ 80;//random scale
		ripples_mc.attachMovie("ripple", "ripple_mc", rippleNum, {_x:randomX, _y:randomY, _xscale:rippleScale, _yscale:rippleScale});//attach ripple
	setInterval(ripple, "interval", 500 );//attach a ripple every 1/2 second

function updateScore(){
	var scoreText:String = "SCORE: " + score;//score text
	header_mc.score_txt.text = scoreText;
	header_mc.scoreShadow_txt.text = scoreText;//write text in shadow

function attachStartScreen(){
	//this is the start screen
	this.createEmptyMovieClip("start_mc", 744);
	start_mc._alpha = 0;
	start_mc._x = (gameWidth - 350)/2;//define position
	start_mc._y = (gameHeight - 350)/2;
	start_mc.attachMovie("startScreen", "startScreen_mc", 2);
	tweenAlpha("start_mc", 100, false);//tween fade in
	start_mc.startScreen_mc.startButton_mc.onRelease = function(){//start button
		score = 0;
		tweenAlpha("start_mc", 0, true);//fade start button out
		segmentInterval = setInterval(segments, "interval", timeBetweenElongate);//periodically make snake longer

function attachEndScreen(){
	//this is the end screen
	this.createEmptyMovieClip("end_mc", 744);
	end_mc._x = (gameWidth - 350)/2;//define position
	end_mc._y = (gameHeight - 350)/2;
	end_mc.attachMovie("endScreen", "endScreen_mc", 2);
//	end_mc.attachMovie("header_pette","header_pette_mc", 4);

	//end_mc.attachMovie("header_pette", "endScreen_mc", 3);



//start the snake
function startSnake(segToAdd:Number):Void{
	//starting point for the snake
	currentSegX = startSegX;
	currentSegY = startSegY;
	currentSegR = startSegR;
	snake_mc.removeMovieClip();//kill the old snake
	this.createEmptyMovieClip("snake_mc", 10);//make new snake
	snake_mc._alpha = 0;//start invisible
	tweenAlpha("snake_mc", 100, false);//fade snake in
	yums_mc.removeMovieClip();//get rid of apples
	this.createEmptyMovieClip("yums_mc", 409);//make new clip for apples
	for(var i:Number = 1;i<segToAdd;i++){
		currentSegX += segmentDistance;//add segments
		snake_mc.attachMovie("bodySeg", "seg"+segmentNumber+"_mc", segmentNumber, {_x:currentSegX, _y:currentSegY, _rotation:currentSegR}); 
	snake_mc.attachMovie("head", "head_mc", 1, {_x:currentSegX, _y:currentSegY, _rotation:currentSegR});//attach snake head
	numberOfSegs = segToAdd;
//where to put the next segment
function segPosition():Array{
	if(Key.isDown(Key.RIGHT)) { //when you click the right button change angle
 		currentSegR += turnIncriment;
 	}else if (Key.isDown(Key.LEFT)) { //when you click the left button change angle
 		currentSegR += -turnIncriment;
	currentSegX += Math.sin( (Math.PI* currentSegR)/180 )* segmentDistance;//determine where next seg x and y go
	currentSegY += -(Math.cos( (Math.PI* currentSegR)/180 )* segmentDistance);
	var positionsArray:Array = new Array;//create array for positions
	//if the snake goes off the screen put the on the opposite side
	if(currentSegX > gameWidth + 16){
		currentSegX = -16;
	}else if(currentSegX < -16){
		currentSegX = gameWidth + 16;
	if(currentSegY > gameHeight + 16){
		currentSegY = -16;
	}else if(currentSegY < -16){
		currentSegY = gameHeight + 16;
	positionsArray.push(currentSegX, currentSegY, currentSegR);//push positions to array
	return positionsArray;
//check the hit areas
function checkHit(){
	//check to see if the head hits the snake
	for(var i:Number = segmentNumber - numberOfSegs;i<segmentNumber;i+=5){
			delete snake_mc.onEnterFrame;//stop moving snake
			//clearInterval(segmentInterval);//stop adding segments
			//tweenAlpha("snake_mc", 0, true);//fade snake out
			//mettere funzione per visualizzare lo score e la registrazione


function checkYumHit():Void{
	//see if the apples hit the snake head
	if (eval("yums_mc.yum"+yumNum+"_mc").hitTest(snake_mc.head_mc.hitArea_mc)){
		pointsScoredGroup_mc.attachMovie("pointsScored", "pointsScored"+yumNum+"_mc", yumNum, {_x:eval("yums_mc.yum"+yumNum+"_mc")._x, _y:eval("yums_mc.yum"+yumNum+"_mc")._y});
		eval("pointsScoredGroup_mc.pointsScored"+yumNum+"_mc").score_txt.text = "+" + scoreInc;//change score text
		tweenAlpha("pointsScoredGroup_mc.pointsScored"+yumNum+"_mc", 0, true);
		eval("yums_mc.yum"+yumNum+"_mc").removeMovieClip();//remove apple

		score += scoreInc;//add to score
		updateScore();//update score

function attachYum():Void{
	//attach an apple
	//random position of the apple
	var randomX:Number = Math.round(Math.random()* (gameWidth - 40))+20;
	var randomY:Number = Math.round(Math.random()* (gameHeight - 40))+20;
	var randomR:Number = Math.round(Math.random()* 360);
	//var randomY:Number = 
	yums_mc.attachMovie("yumYum", "yum"+yumNum+"_mc", yumNum, {_x:randomX, _y:randomY, _rotation:randomR, _alpha:0});
	tweenAlpha("yums_mc.yum"+yumNum+"_mc", 100, false);//fade alpha in
//peridically make it longer
segments = new Object();
segments.interval = function() {
	numberOfSegs += addSegInc;//add segments

//move the snake
function moveSnake():Void{
	snake_mc.onEnterFrame = function(){
		checkYumHit();//see if you are eating an apple
		for(var i:Number = 0;i<speed;i++){
			var positionsArray:Array = segPosition();//get positions of next seg
			checkHit();//check to see if snake hits itself
			snake_mc.head_mc._x = positionsArray[0];//move head
			snake_mc.head_mc._y = positionsArray[1];//move head
			snake_mc.head_mc._rotation = positionsArray[2];//move head
			snake_mc.head_mc.swapDepths(segmentNumber + 100);//move head depth
			snake_mc.attachMovie("wake", "wake"+segmentNumber+"_mc", segmentNumber + 99, {_x:positionsArray[0], _y:positionsArray[1], _rotation:positionsArray[2]});//attach wake
			snake_mc.attachMovie("bodySeg", "seg"+segmentNumber+"_mc", segmentNumber, {_x:positionsArray[0], _y:positionsArray[1], _rotation:positionsArray[2]}); //attach body seg
			var lastSegNum:Number = segmentNumber-numberOfSegs;//number of last segment
			eval("snake_mc.seg"+lastSegNum+"_mc").removeMovieClip();//remove the last segment
			//make the tail taper off and get skinny at neck
			if(i == 1){
				//make the first part skinny
				var smallestWidth:Number = 30;//skinniest part of the neck
				var numberToGrow:Number = Math.round(numberOfSegs/3)//grows from the first 1/4
				if(numberToGrow > 30){
					numberToGrow = 30;
				for(var iii:Number = 0;iii<numberToGrow;iii++){
					eval("snake_mc.seg"+(segmentNumber - iii)+"_mc")._xscale = iii* ((100-smallestWidth)/numberToGrow) + smallestWidth;
				//how many taper off
				var numberToTaper:Number = Math.round(numberOfSegs/2);//tapers the last 1/2
				if(numberToTaper > 45){
					numberToTaper = 45;
				for(var ii:Number = 0;ii<numberToTaper;ii++){
					eval("snake_mc.seg"+(lastSegNum + ii)+"_mc")._xscale = ii* (100/numberToTaper);

//tween fade
easeType = mx.transitions.easing.Strong.easeOut;
var tweenTime = .5;
tweenAlpha = function(tweenClipAlpha:String, tweenEndAlpha:Number, thenRemove:Boolean){
	//fade in and out function
	tweenClipAlpha = eval(tweenClipAlpha);
    alphaTween = new mx.transitions.Tween(tweenClipAlpha, "_alpha", easeType, getProperty(tweenClipAlpha, _alpha), tweenEndAlpha, 1, true);
	if(thenRemove == true){//if true remove the clip when faded in or out
		alphaTween.onMotionFinished = function(){

snakeGameXML.load("snakeGame.xml");//loads xml

e il mio pulsante ha un normale
on (release)

getURL("http://mary:8888/registra.php", "_self", "POST");

Vi allego anche il file che potete scaricare da qua


Utente Attivo
6 Ott 2009
Quindi quello script è scritto in Javascript e tu devi passare una sua variabile ad un form in PHP? A me lo script che hai postato non sembra PHP... giusto?

In ogni caso potresti usare una variabile GET, no? Oppure usi un form nascosto che poi invierai con la funzione submit().

Zed Marlin

Utente Attivo
3 Nov 2004
The Net
Quelli che hai inserito sono:
  1. Actionscript
  2. Button AS di getUrl

Il primo carica in Flash il file XML con le variabili, il secondo chiama una PHP inviando cosa? hai raccolto i dati da inviare dove? Generalmente con invio dati di questo tipo effettui un loadVariables verso la pagina di destinazione, ma dal getURL pare che chiami soltanto la PHP pura. Forse le variabili sono impostate nel source PHP?

Utilizzo GET:
Il metodo GET consiste nell'accodare i dati all'indirizzo della pagina richiesta, facendo seguire il nome della pagina da un punto interrogativo e dalle coppie nome/valore dei dati che ci interessano. Nome e valore sono separati da un segno di uguale. Le diverse coppie nome/valore sono separate dal segno '&'. Ad esempio: <a href="pagina.php?cod=a7&cat=2">. La stringa che si trova dopo il punto interrogativo, contenente nomi e valori dei parametri, viene detta query string. Quando la pagina pagina.php viene richiamata in questo modo, essa avrà a disposizione, al suo interno, le variabili $_GET['cod'] (con valore 'a7') e $_GET['cat'] (con valore '2'). Infatti i valori contenuti nella query string vengono memorizzati da PHP nell'array $_GET, che è un array superglobale in quanto è disponibile anche all'interno delle funzioni.

Utilizzo POST:
Il metodo POST viene utilizzato con i moduli: quando una pagina HTML contiene un tag <form>, uno dei suoi attributi è method. In questo caso i dati vengono inviati in maniera da non essere direttamente visibili per l'utente, attraverso la richiesta HTTP che il browser invia al server.

I dati che vengono passati attraverso il metodo POST sono memorizzati nell'array $_POST. Anche questo array, come $_GET, è un array superglobale. Quindi, per fare un esempio attraverso un piccolo modulo:

<form action="elabora.php" method="post">
    <input type="text" name="nome">
    <input type="checkbox" name="nuovo" value="si">
    <input type="submit" name="submit" value="invia">

Questo modulo contiene semplicemente una casella di testo che si chiama 'nome' e una checkbox che si chiama 'nuovo', il cui valore è definito come 'sì'. Poi c'è il tasto che invia i dati, attraverso il metodo POST, alla pagina elabora.php.

Questa pagina si troverà a disposizione la variabile $_POST['nome'], contenente il valore che l'utente ha digitato nel campo di testo; inoltre, se è stata selezionata la checkbox, riceverà la variabile $_POST['nuovo'] con valore 'si'


Nuovo Utente
5 Mar 2007
Il codice è Action script 2.0 . Io sto cercando di fare passare la variabile ad un form in php. non posso farla passare in GET perchè il valore deve essere nascosto per stilare una classifica alla fine..

Zed Marlin

Utente Attivo
3 Nov 2004
The Net
Non hai scritto ancora nulla... è come se tu dicessi: "non riesco a fare questo perché quello non funziona.." ma quale variabile?? di che variabile stai parlando, quali dati, quali valori?

Per poter passare una variabile e soprattutto "scriverla" devi essere a conoscenza di quali dati, quali campi, quali eventi scatenati dai campi pettedemon..

una var ad esempio è questa: var score:Number = 0;
a questa var corrispondono decine di IF, ELSE, ELSE IF, ma questa è solo una.. alla fine del gioco il valore 0 di partenza non è più lo stesso, ma avrà un valore pari alla serie di eventi che ne hanno cambiato lo stato. Alla fine del gioco se vuoi raccogliere il valore di score:Number = ; dovrai accodare a score tutti gli eventi che ne modificano lo stato, immagazzinarli in un campo volatile ed inviarli ad una pagina php ma con i dovuti valori.. questo significa che in pagina php dovrai avere altre variabili che prendono il valori di score alla fine, lo stampano e lo inseriscono in un database o in una tabella..


Nuovo Utente
5 Mar 2007
Scusate, l'avevo scritto nel primo post, comunque la variabile da far passare è score.
Se io faccio il trace(score) dopo la funzione
function attachEndScreen(){
    //this is the end screen
    this.createEmptyMovieClip("end_mc", 744);
    end_mc._x = (gameWidth - 350)/2;//define position
    end_mc._y = (gameHeight - 350)/2;
    end_mc.attachMovie("endScreen", "endScreen_mc", 2);



Mi ritorna il giusto valore. Non riesco a farla passare al pulsante e quindi a php pero', non me la riconosce...
Discussioni simili
Autore Titolo Forum Risposte Data
D jquery per recupero variabile Javascript 4
P Recupero variabile Ajax 5
minatore Recupero variabile PHP 12
T Recupero variabile javascript Javascript 1
S problema con recupero dati tabella mysql PHP 2
D Recupero dati da HDD esterno Hardware 0
T foreach e fetchAll dove recupero solo l'ultimo record PHP 5
T recupero valori select multipla da android Javascript 3
W Recupero password Classic ASP 16
L Recupero dati da SSD Windows 10 prof Windows e Software 2
S [PHP] Recupero nome immagine da Form con input file PHP 3
Sergio Unia Recupero dati da una vecchia versione MySql [Risolto] MySQL 4
bubino8 [PHP] Recupero id autoincrement PHP 8
I Recupero accesso pannello di controllo dominio Leggi, Normative e Fisco 2
S [PHP] form con metodo get e recupero id PHP 4
Emix [PHP] Check - Select e recupero variabili PHP 40
bubino8 [PHP] Recupero input senza invio PHP 1
U [PHP] Selezione con menu a tendina e recupero selezione PHP 5
L Problema con recupero dati in PHP cURL e JAVA con server PHP 1
P Javascript o Jquery - recupero testo (oltre al valore) di una select Javascript 5
S [PHP] Recupero più dati da form realizzata ciclo FOR PHP 5
P [PHP] Recupero dati da un array PHP 5
P [Javascript] Aiuto per recupero variabili da script Javascript 10
F Recupero dati json Ajax 2
A Form recupero campo Radio PHP 7
I tabella con ciclo, recupero dati PHP 3
Z recupero e stampa a video di immagini da database PHP 3
Emix Problema recupero Dati da MYSQL PHP 20
L Recupero dati da tutte le tabelle nel db MySQL 4
Alessio Gebbia [PHP] Recupero dati da un WHILE ! PHP 3
N Recupero indirizzo mail PHP 1
M recupero dati... PHP 1
filomeni Recupero anchor Javascript 13
P Recupero dati per select form PHP 9
S Recupero valori da tabella tramite id colonna Javascript 1
L Recupero dati form in tabella e invio con ajax. Problemino jQuery 1
L PHP e recupero risultati da query PHP 2
L PHP e recupero risultati da query PHP 11
felino HDD 2.5'' caduto a terra: possibile recupero dei dati al suo interno Hardware 8
D recupero valore radio button PHP 1
Emix Recupero dati da una tabella e spostarli in un altra PHP 11
A Problema recupero valori da select con chiamata ajax Ajax 1
neo996sps Non recupero il value in un select popolato da DB PHP 4
N Chronoforms, recupero nome form Joomla 20
blips Recupero valori select Javascript 1
H Recupero password dimenticata PHP 0
C Recupero dati da pagina esterna PHP 5
M recupero dati da db PHP 6
I Recupero numero file uploadati php PHP 1
T Problema con form e recupero dati da mysql PHP 17

Discussioni simili