Ciao ragazzi, ho un problema e spero mi possiae aiutare.
Qui il testo: Si costruisca in javascript una scacchiera 10x10, con colori di background BIANCO e NERO
alternati, con due pedine inizialmente posizionate nelle caselle (0,9) e (9,0) ed individuate da due
colori di background, ROSSO e BLU. Una volta costruita la scacchiera, bisognerà evidenziare a
schermo, con un timeout di 2 secondi, la sequenza di mosse presente in un file di testo, con il
seguente formato:
x1,y1
x2,y2
...
xN,yN
Le mosse (alternativamente pedina ROSSA e pedina BLU), dovranno essere ottenute dal server,
attraverso una chiamata AJAX così fatta:
getPosition.php?
Il file di testo risiede sul server e può essere aggiornato dinamicamente da un form, presente nella
stessa pagina della scacchiera, in cui inserire le mosse e che contiene quattro campi, due per il
ROSSO e due per il BLU.
Lo script javascript valida le mosse, infatti le pedine possono muovere solo sulle caselle
BIANCHE. Se una mossa non è corretta, viene visualizzato un alert box e la mossa ignorata; se
invece non sono disponibili nuove mosse, semplicemente aspetta lʼinserimento di una nuova mossa
da parte dellʼutente. Se una pedina arriva sulla casella occupata dall’altra pedina, questa viene
mangiata e il gioco si interrompe, visualizzando a schermo un alert box con il colore del vincitore.



Ecco il mio codice
file: index.html
codice:
<HTML>
<HEAD>
<SCRIPT type="text/javascript" src="scacchi.js"> </SCRIPT>
</HEAD>

<BODY>
<SCRIPT>
scacchiera();//costruisco la scacchiera
gioca();//inizio a giocare
</SCRIPT>
<INPUT type="text" id="txt"/>mossarossaX</br>
<INPUT type="text" id="txt"/>mossarossaY</br>
<INPUT type="text" id="txt"/>mossabluX</br>
<INPUT type="text" id="txt"/>mossabluY</br>

<INPUT type="BUTTON" value="INVIA" onclick="newMove()"/>
</BODY>
</HTML>
file getposition.php
codice:
<?php
$file=file('mosse.txt');
//la richiesta
$mossa=$_REQUEST['moveNumber'];
//controllo se la mossa esiste
if($mossa>=sizeof($file)||$mossa<0)
echo -1; //non esiste
else
echo trim($file[$mossa]); //ritorno il valore corrispondente nel file
?>
file scacchi.js
codice:
var oldColorG; //serve per ripristinare il colore della prima pedina selezionata
var oldColorV; //serve per ripristinare il colore della seconda pedina selezionata
var oldMoveG; //la vecchia posizione della prima pedina
var oldMoveV; //la vecchia posizione della seconda pedina
var xhr=getXMLHttpRequest(); //l'oggetto XMLHttpRequest per comunicare con il server

//mi costruisco la mia scacchiera
function scacchiera()
{
	document.write('<table cellpadding=10 cellspacing=2 border=3px');
	for(i=0;i<10;i++)
	{
		document.write('<tr>'); //creo le righe
		for(j=0;j<10;j++)
		{
			((i+j)%2 !=0) ? colore='white' : colore='black'; //creo il colore di background bianco e nero alternati
			document.write('<td id='+i+','+j+' bgcolor='+colore+' width=50 height=50> </td>');
		} //con <td> mi creo la cella
		document.write('</tr>');
	}
	document.write('</table>');
	document.getElementById("0,9").setAttribute('bgcolor','yellow');//la prima pedina
        document.getElementById("9,0").setAttribute('bgcolor','green');//seconda pedina
	oldColor1='black';
	oldColor2='white';
	oldMove1="0,9";
	oldMove2="9,0";
}

function getXMLHttpRequest()
{
	if(XMLHttpRequest)
	return new XMLHttpRequest();
	else
	{
		try
		{ //eccezione per Internet Explorer 6.0 o minori
			return new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e)
		{
			try
			{
				return new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e)
			{}
		}
	}
	return false;
}
Poi non riesco più a continuare, mi manca cioè l'ultimo punto:
Lo script javascript valida le mosse, infatti le pedine possono muovere solo sulle caselle
BIANCHE. Se una mossa non è corretta, viene visualizzato un alert box e la mossa ignorata; se
invece non sono disponibili nuove mosse, semplicemente aspetta lʼinserimento di una nuova mossa
da parte dellʼutente. Se una pedina arriva sulla casella occupata dall’altra pedina, questa viene
mangiata e il gioco si interrompe, visualizzando a schermo un alert box con il colore del vincitore.