Да, отправить можно. Предлагаю вам дополнить запрос к сокету еще параметром key:
var msg = {
message: mymessage,
name: '<?=$loggedIn['personaname']?>,
key: '<?= $userKey ?>',
color : '<?php echo $colours[$user_colour]; ?>'
};
а сам
$userKey это хеш логина с какой-нибудь солью, например:
$salt = 'SDFGH$W#%^UHdfHE$#%';
$userKey = md5($loggedIn['personaname'] . $salt);
а в скрипте который слушает новые сообщения проверять подлинность отправителя так:
if($key !== md5($name . $salt)) {
// обработка поддельного запроса
} else {
// все ок
}
где
$key и
$name это данные полученные из сокета с сообщением.
В таком случае даже если пользователь подменит personaname он не подменит key. а если попытается то в любом случае он не знает значени соли, и сработает первое условие.
Это самый простой вариант, чисто для наглядности.