[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: if else
Страницы: 1, 2
mmsgold
почему if выполняет 1ую управляющую конструкцию

$sex = 0;
if ($sex != 0 or $sex != 1 or $sex != 2 or $sex != 3)
{
$sex = 3;
$sex = "sex = $sex";
$poisk_array['sex'] = $sex;
}
else
{
$sex = "sex = $sex";
$poisk_array['sex'] = $sex;
}
mmsgold
Цитата (AlmazDelDiablo @ 5.08.2013 - 17:31)
#POST# t=75996<br /> Потому, что $sex != 1,2,3.

разве бы тогда не and там должен быть? что вообще абсурдно, а так должно не выполниться одно из условий и уйти в else
Bolik
попробуй if ($sex !== 0 or $sex !== 1 or $sex !== 2 or $sex !== 3)

mmsgold
Цитата (Bolik @ 5.08.2013 - 17:33)
попробуй if ($sex !== 0 or $sex !== 1 or $sex !== 2 or $sex !== 3)

так вроде тоже не работало но попробую
mmsgold
Bolik, тоже самое
mmsgold
$sex = 0;
if ($sex == 0 or $sex == 1 or $sex == 2 or $sex == 3)
{
$sex = "sex = $sex";
$poisk_array['sex'] = $sex;
}
else
{
$sex = 3;
$sex = "sex = $sex";
$poisk_array['sex'] = $sex;
}

а так верно работает :blink: вот не пойму почему
Guest
mmsgold
Потому что [sql]$sex != 1[php] возвращает true
mmsgold
да ладно так просто) спасибо Guest! просто надо было вместо sex подставить 0, запутался
andrey888
if ($sex != 0 or $sex != 1 or $sex != 2 or $sex != 3)

Потому что в этом случае даже не важно чему равен $sex . На выходе всегда true.

_____________
Прогноз на следующие 5 лет : Россия, Китай - две величайшие державы.
США в Ж*пе. Справедливость восторжествует. )
Akiyamka
Ребят, не получается реализовать идею. Где-то у меня ошибка, так что очень нуждаюсь в консультации.

Есть такой цикл:
for ($pic=0; $pic<=5; $pic=$pic+1) {
$url ="http://amt-minsk.by/wp-content/themes/ManroadTheme/image/slider/" . $name . $pic . ".jpg";
$code = '<div class="slide-item"><a href="' . $url . '" rel="lightbox"><img src="' . $url . '" alt="" style="height: 323px;" /></a></div>';
if (@fopen($url, "r")) {
echo $code;
else {$pic=5;}


Он проверяет по указанному пути картинки, перебирая их по порядку (picture0, picture1, picture2) и найденные "одевает" в дивы. Так до тех пор, пока не дойдет до несуществующей картинки, или их кол-во перевалит за 5. В этот момент луп останавливается.

Все классно работает, но вот понадобилось мне создать условие, что если луп остановился уже после первого оборота (т.е. второй оборот не начался, или, более конкретно, если картинка всего одна), то... echo "blablabla";

Т.к. c php знаком совсем недавно, не могу придумать решения. По разному пробовал.
Последнее что сделал:

for ($pic=0; $pic<=5; $pic=$pic+1) {
$url ="http://amt-minsk.by/wp-content/themes/ManroadTheme/image/slider/" . $name . $pic . ".jpg";
$code = '<div class="slide-item"><a href="' . $url . '" rel="lightbox"><img src="' . $url . '" alt="" style="height: 323px;" /></a></div>';
$cap = $cap-1;
if (@fopen($url, "r")) {
echo $code;
else {$pic=5;}

if ($cap=4 and $pic=5) {
echo "blablabla"; }

Но все равно ложно срабатывает, даже если циклов было два, а не один (хотя по идее условие должно соблюдаться только если цикл был один...) В общем запутался я, нужна помощь.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.