Code PHP :
<?php
SELECT x,y FROM carte WHERE x<=$x+1 AND x>=$x-1 AND y<=$y+1 AND y>=$y-1 AND (x!=$x_ancien AND y!=$y_ancien)
Ton code qui effectivement refuse toute les ligne avec y ancien et toute les ligne avec x_ancien
Code PHP :
<?php
SELECT x,y FROM carte WHERE x<=$x+1 AND x>=$x-1 AND y<=$y+1 AND y>=$y-1 AND NOT(x=$x_ancien AND y=$y_ancien)