I've adding mysqli_num_rows, emails or username in the update, but when the user clicks on update with the same email and username, it says this username or email has already been used. I don't want this.
$username=(htmlentities(mysqli_real_escape_string($conn,$_POST['username'])));
$fullname=(htmlentities(mysqli_real_escape_string($conn,$_POST['fullname'])));
$email=(htmlentities(mysqli_real_escape_string($conn,$_POST['email'])));
// checking username and email for already used or no
$check_username = "SELECT * FROM users WHERE username='$username'";
$check_email = "SELECT * FROM users WHERE email='$email'";
$result_username = mysqli_query($conn,$check_username);
$result_email = mysqli_query($conn,$check_email);
if (mysqli_num_rows($result_username) > 0) {
echo '<div class="mt-3 my-2 error-form" style="display: block;">ناوی-بەکارهێنەر پێشتر تۆمارکراوە</div>';
}elseif(mysqli_num_rows($result_email) > 0){
echo '<div class="mt-3 my-2 error-form" style="display: block;">ئيمەيڵ پێشتر تۆمارکراوە</div>';
}else{
if (preg_match('/^[A-Za-z][a-zA-Z0-9._]{3,20}$/', $username)) {
$query_update="UPDATE users SET username='$username', email='$email', fullname='$fullname' WHERE idusers='$id' ";
if(mysqli_query($conn,$query_update)){
echo '<div class="mt-3 my-2 success-form" style="display: block;">زانياريەکانت بەسەرکەوتووی نوێکرايەوە</div>';
}else{
echo '<div class="mt-3 my-2 error-form" style="display: block;">هەڵەيەک ڕويدا، تکايە دووبارە هەوڵ بدەوە </div>';
}}else {
echo '<div class="mt-3 my-2 error-form" style="display: block;">ناوی-بەکارهێنەر گوونجاو نيە</div>';
}