Что нового

Оператор Or не работает

sasha-ld

Новичок
Сообщения
48
Репутация
0
Здравствуйте!
Помогите разобраться почему так:
Код:
$tit1 = 'Яндекс'
$tit2 = 'Google'
$title = _IePropertyget($oIE, 'title')
If $title <> $tit1 or $title <> $tit2 Then
	  msgbox(0, '', 'Страница не обнаружена')
	  ContinueLoop
   EndIf


Даже если страница открыта на яндексе либо на гугле всё равно выходит сообщение что страница не найдена.
и вскобки пробовал заключать:
Код:
If ($title <> $tit1) or ($title <> $tit2) Then


А так всё работает:

Код:
$tit1 = 'Яндекс'
$tit2 = 'Google'
$title = _IePropertyGet($oIE, 'title')
If $title <> $tit1 Then
	  If $title <> $tit2 Then
	  msgbox(0, '', 'Страница не обнаружена')
	  ContinueLoop
	  EndIf
   EndIf
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
sasha-ld [?]
если страница открыта на яндексе
Теперь прочитаем условие по-человечески. Если "Яндекс" не равен "Яндекс" ИЛИ "Яндекс" не равен "Google". В данном случае выполнится второе условие. Если вы будете не странице Google, то первое.

так всё работает
А "так" вы записали условие AND: Как правильно создать условие If ... Then

Но, если очень хочется OR, то нужно поменять условия и инвертировать результат
Код:
If Not ($title = $tit1 Or $title = $tit2) Then
 
Автор
S

sasha-ld

Новичок
Сообщения
48
Репутация
0
Да, теперь понятно. Что то я совсем запарился с этими условиями.
Еще раз спасибо.
 
Верх