это будет легко поймать в javascript, но не может эхо в php
PHP - это язык сценариев на стороне сервера, что означает, что в вашем случае вы можете отобразить значение опции выбора только после отправки его на сервер. Здесь echo $row['id'];
просто распечатает последний идентификатор, выбранный из вашей базы данных.
(на стороне клиента) JS выполняется в браузере, это позволяет вам отслеживать выбор пользователя по мере его возникновения.
<form action="#" method="post">
<select class="form-control" id="oid" name="userselection">
<option>--Select--</option>
<?php
while($row=mysqli_fetch_array($run))
{
?>
<option value="<?= $row['id'];?>">
<?= $row['first_name'];?> #<?= $row['mobileno']; ?>
</option>
<?php
}
?>
</select>
<input type="submit" name="submit" value="Submit selection" />
</form>
<?php
if(isset($_POST['submit'])){
echo $_POST['userselection'];
}
?>