Я извлекаю значение из БД и присваиваю значение текстовому полю на той же странице.
<input type='text' name='sr1' value='<?php echo $row['value']?>'>
На следующей странице пытаемся получить значение из того же текстового поля.
$sr1 = $_POST['sr1'];
когда я печатаю переменную с помощью эха, значение печатается как «Да». но когда вы начинаете сравнивать его в условии «если», всегда выполняется другое.
if ($sr1=='Yes')
echo 'Yes';
else
echo 'No';
получение операции как: - строка (6) «Да», поскольку размер поля в БД равен 6
Получено ли значение для $row['value'] из запроса к базе данных?
да, значение исходит из запроса БД
проверить, что значение, хранящееся в БД, содержит пробелы?
да значения БД содержат 3 пробела после
это сработало, спасибо @Omi; @СпейсФеникс; @u_mulder ;






Таким образом, var_dump($sr1) выдает результат как string(6)"Yes", что означает, что значение в вашей базе данных содержит пробелы. Либо вам нужно обрезать пробелы перед сохранением значения в БД, либо использовать подрезать() при сравнении значения.
$sr1 = trim($_POST['sr1']);
Он удалит пробелы вокруг $_POST['sr1'] и даст вам строку Yes, и ваше сравнение заработает.
var_dump($sr1);