Ciao a tutti..
ho un problema con un lavoro che sto facendo
il mio scopo è fare il gioco Scarabeo in php ma è da due giorni che sto impazzendo
vi posto il codice e poi vi spiego
Codice PHP:
<table border=0 cellpadding=2 cellspacing=2>
<tr>
<td><form action="multiarray.php" method="post">
<label>Lettere</label>

<input name="lettere" type="text">


<label>Parola</label>

<input name="parola" type="text" maxlength="8" >




<SELECT NAME="riga">
<OPTION selected Value=nessuna> Riga
<OPTION value=1> 1
<OPTION value=2> 2
<OPTION Value=3> 3
<OPTION value=4> 4
<OPTION value=5> 5
<OPTION Value=6> 6
<OPTION value=7> 7
<OPTION value=8> 8
<OPTION Value=9> 9
<OPTION value=10> 10
<OPTION value=11> 11
<OPTION Value=12> 12
<OPTION value=13> 13
<OPTION value=14> 14
<OPTION Value=15> 15
<OPTION value=16> 16
<OPTION value=17> 17
</select>
<SELECT NAME="colonna">
<OPTION selected Value=nessuna> Colonna
<OPTION value=1> 1
<OPTION value=2> 2
<OPTION Value=3> 3
<OPTION value=4> 4
<OPTION value=5> 5
<OPTION Value=6> 6
<OPTION value=7> 7
<OPTION value=8> 8
<OPTION Value=9> 9
<OPTION value=10> 10
<OPTION value=11> 11
<OPTION Value=12> 12
<OPTION value=13> 13
<OPTION value=14> 14
<OPTION Value=15> 15
<OPTION value=16> 16
<OPTION value=17> 17
</select>




<input name="posizione" type="radio" value="orizzontale">
<label>Orizzontale</label>


<input name="posizione" type="radio" value="verticale">
<label>Verticale</label>




<input type="submit" value="Controlla">
</td>
<td>
<?php 
$db 
mysql_connect("localhost","root","");
mysql_select_db('scarabeo',$db) or die ("Impossibile connettersi al Database");;

$griglia=array(1=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                        
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
2=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
3=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
4=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
5=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
6=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
7=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
8=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
9=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
10=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
11=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
12=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
13=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",                              
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
14=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
15=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
16=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),
             
17=>array("&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp",
                         
"&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp","&nbsp"),);

$parola=$_REQUEST['parola'];
$riga=$_REQUEST['riga'];
$colonna=$_REQUEST['colonna'];
$lung=strlen($parola);
$posizione=$_REQUEST['posizione'];

$query=mysql_query("SELECT * FROM parole WHERE parola = '{$parola}'");
$stampa=mysql_fetch_assoc($query);
for (
$i=1;$i<18;$i++)                            //vengono scritte le parole già presenti
{
    for (
$a=1;$a<18;$a++)
    {    
        if (isset(
$_REQUEST["{$a}_($i-1)"])) {
            
$griglia[$a][$i-1]=$_REQUEST["{$a}_($i-1)"];
        }
    }    
}




if (
$stampa=='') {
echo(
"<script>alert('La parola inserita non esiste');</script>");

else {
        
$sbagliato=false;
          if (
$posizione=='orizzontale') {        //controlla se bisogna scrivere la parola orizzontalmente
            
for ($j=0;$j<$lung;$j++) {
                if (
$sbagliato==false) {
                    
$prova=$griglia[$colonna+$j][$riga-1].' ';
                    if ((
$prova==$parola[$j]) || ($prova=="&nbsp")) {
                        
$griglia[$colonna+$j][$riga-1]=$parola[$j];
                    }
                    else {    
                        
$sbagliato=true;
                        echo(
"<script>alert('Non puoi inserire la parola in questa posizione');</script>");
                    }                
                }
            }
        }    
        else {                                  
//altrimenti lo scrive verticalmente
            
for ($j=0;$j<$lung;$j++) {
                if (
$sbagliato==false) {
                    
$prova=$griglia[$colonna][$riga+($j-1)];
                    if ((
$prova==$parola[$j]."&nbsp") || ($prova=="&nbsp")) {
                        
$griglia[$colonna][($riga-1)+$j]=$parola[$j];
                    }
                    else{
                        
$sbagliato=true;
                        echo(
"<script>alert('Non puoi inserire la parola in questa posizione');</script>");
                    }
                }
            }
        }
}
?>
<div align=left>
<p align="center">
<table border=1 cellpadding=2 cellspacing=2><caption>SCARABEO</caption>
<th></th><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th>
<th>6</th><th>7</th><th>8</th><th>9</th><th>10</th><th>11</th>
<th>12</th><th>13</th><th>14</th><th>15</th><th>16</th><th>17</th>

<?php
for ($i=1;$i<18;$i++)
{
    echo(
"<tr><td>$i</td>");
    for (
$a=1;$a<18;$a++)
    {
        echo(
"<td>");                                                                      
        echo(
$griglia[$a][$i-1]);
        echo(
"<input type=\"hidden\" value=\"{$griglia[$a][$i-1]}\" name=\"{$a}_($i-1)\">");
        echo(
"</td>");
    }
    echo(
"</tr>");    
}
?>

</p>
</table>
</td>
</table>
</form>
</div>
all'inizio viene creata la tabella e l'array bidimensionale per gestire le lettere all'interno di esso..
poi vengono riscritte le eventuali parole già presenti e poi inizia il codice vero e proprio..
dopo aver controllato se la parola bisogna scriverla in orizzontale o in verticale (in base al valore passato da un'altra pagina) controllo se nella posizione in cui bisogna inserire la lettera,è già presente la una lettera uguale oppure se la cella è vuota..se così fosse scrive la parola,altrimenti viene visualizzato un messaggio d'errore..
e il problema arriva adesso,perchè mi viene visualizzato sempre il messaggio, anche se in realtà nella posizione desiderata è possiblie scrivere..

spero di essere stato chiaro e soprattutto spero che qualcuno mi possa aiutare..
ciao a tutti