Как можно сократить условие: Код (Text): if ($plinfo[x] != $move_x) { if ($move_x != null) { mysql_query("UPDATE users SET x='$move_x' WHERE login='Fusix'"); mysql_query("UPDATE users SET y='$move_y' WHERE login='Fusix'"); } } if ($plinfo[y] != $move_y) { if ($move_y != null) { mysql_query("UPDATE users SET y='$move_y' WHERE login='Fusix'"); mysql_query("UPDATE users SET x='$move_x' WHERE login='Fusix'"); } } Можно ли написать: Если х не равен муви х или если у не равен муви у?
Не совсем понятно зачем обновление происходит 2 раза после каждого условия, но если сделать некоторые предположения и допущения то PHP: <?php if ( $move_x && ($plinfo[x] != $move_x) ) { mysql_query("UPDATE users SET x='$move_x' WHERE login='Fusix'"); } if ( $move_y && ($plinfo[y] != $move_y) ) { mysql_query("UPDATE users SET y='$move_y' WHERE login='Fusix'"); }
PHP: <?php if ($plinfo[x] != $move_x AND $move_x != null) { mysql_query("UPDATE users SET x='$move_x', y='$move_y' WHERE login='Fusix'"); } if ($plinfo[y] != $move_y AND $move_y != null) { mysql_query("UPDATE users SET x='$move_x', y='$move_y' WHERE login='Fusix'"); } ?> При том, что на мой взгляд операция одна и та же, есть смысл: PHP: if ( ($plinfo[x] != $move_x AND $move_x != null) OR ($plinfo[y] != $move_y AND $move_y != null) ) { mysql_query("UPDATE users SET x='$move_x', y='$move_y' WHERE login='Fusix'"); } ?> Хотя я подозреваю, что я что-то упускаю ( но имею на то причины =) )