@lemonlimelike

Почему не срабатывает второе условие?

Объясняю логику условий: Происходит проверка если $ip не пуста, то выполняется выборка поля ip из таблице vote, затем происходит еще одна проверка: если $ip не равна переменной $ia(этой переменной я присвоил ip из таблице), то происходит update поля view и т.д.. По сути, второе условие должно срабатывать но оно не срабатывает, если кто не понял, объясню еще раз, второе условие сделал для того, чтобы происходил update только когда заходил бы новый пользователь, т.е. уник. Но это условие не работает, почему?
Ой... вот код)
$ip = '5';
if(isset($ip)){
    $sql_3 = "SELECT ip FROM vote WHERE ip = :ip";
    $stq = $pdo->prepare($sql_3);
    $stq->bindParam(':ip', $ip);
    $stq->execute();
    $ia = $stq->fetch(PDO::FETCH_ASSOC);

   if($ip != $ia['ip']){
        $sql_5 = "UPDATE video SET view = view + '1' WHERE img = :get";
        $ste = $pdo->prepare($sql_5);
        $ste->bindParam(':get', $get);
        $ste->execute();
        echo "2";
    }
}
  • Вопрос задан
  • 143 просмотра
Решения вопроса 1
DevMan
@DevMan
замени
if($ip != $ia['ip']){
на
var_dump($ip, $ia['ip']);
if($ip != $ia['ip']){
и думай.

л - логика
д - дебаг
пхп - ваще тут не при чем
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@morricone85
вместо isset() нужно - !empty;
Ответ написан
Комментировать
на будущее - старайся в условиях делать типизированное сравнение везде, где это возможно. очень помогает понять все приколы пхп)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы