Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> проверка"== 0" не работает для нечисловых значений 
:(
    Опции темы
DRUG_ADDICT
Дата 16.12.2007, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 10.8.2007

Репутация: нет
Всего: нет




M
skyboy
Что кнопкой "код" сам воспользовался - молодец. Но без матов обходись.

Код

$tovar = $_POST['tovar'];
$strona = $_POST['strona'];
$oblost = $_POST['oblost'];
$gorod = $_POST['gorod'];
$fio = $_POST['fio'];
$indecs = $_POST['indecs'];
$email = $_POST['email'];
$adress = $_POST['adress'];
$dopolnitelno = $_POST['dopolnitelno'];

if ($tovar == 0 or $strona == 0 or $oblost == 0 or $gorod == 0 or $fio == 0 or $indecs == 0 or $email == 0 or $adress == 0){

echo "<strong><center><font color=red><span class=\"style2\">Все поля кроме поля \"дополнительно\" (дополнительно заполняем по желанию), должны быть заполнены!</span></font></center></strong><br /><center><span class=\"style2\"><a href=\"javascript:history.back();\">Назад</a></span></center>";

echo "$strona";
echo "$oblost";
echo "$gorod";
echo "$fio";
echo "$indecs";
echo "$email";
echo "$adress";
echo "$dopolnitelno";

} else { 

echo "<strong><center><font color=red><span class=\"style2\">Через не которое время к вам на email (которое вы указали($email)) придет письмо, для подтверждения заказа!</span></font></center></strong><br />";

echo "<center><span class=\"style2\">Вы $fio, заказали сериал: $tovar, на адрес $strona, $oblost, $gorod, (индекс: $indecs), $adress<br />$dopolnitelno</span></center>";

}

Ну собсно вот! [вырезано] когда форму заполняю и каждое поля это цифры тоесть: 113981498714971402740153 и т.д. то все нормально эти цифры передаются и все такое... 
а когда заполняю форму нормально и в полях пишу: например в поле Строна: "Россия" или поле: Город: "МОСКОВ" и т.д. то значения НЕ передаются или что там короче выходит ето:

Код

echo "<strong><center><font color=red><span class=\"style2\">Все поля кроме поля \"дополнительно\" (дополнительно заполняем по желанию), должны быть заполнены!</span></font></center></strong><br /><center><span class=\"style2\"><a href=\"javascript:history.back();\">Назад</a></span></center>";


может трабла в этом:

Код

if ($tovar == 0 or $strona == 0 or $oblost == 0 or $gorod == 0 or $fio == 0 or $indecs == 0 or $email == 0 or $adress == 0){

типа НУЛИ типа ТОКА цифры ?! хмм.... а как тогда указать то тут в IF типа "$tovar" пустое значение или там есть что то smile)) 

это проверка на заполнение полей. 



Это сообщение отредактировал(а) PARROT - 16.12.2007, 20:25
--------------------
ICQ# 23-23-30 What can i do for you ? Paid..."Свобода лечит лучше всего" А.С. Неил. Самерхилт.
PM ICQ Jabber   Вверх
skyboy
Дата 16.12.2007, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(DRUG_ADDICT @  16.12.2007,  10:58 Найти цитируемый пост)
а как тогда указать то тут в IF типа "$tovar" пустое значение

empty - проверяет переданный параметр на "не пустоту".
если переменная иммет значение:
  • "" (пустая строка)
  • 0 (0 как целое число)
  • "0" (0 как строка)
  • NULL
  • FALSE
  • array() (пустой массив)
  • var $var; (переменная объявлена, но её не присвоенно значение)
то функция возвращает true. Иначе - false.

PM MAIL   Вверх
Feldmarschall
Дата 16.12.2007, 13:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



Вообще, тут уместно, наверное, дать ссылку на Преобразование типов
PM   Вверх
misterio
Дата 16.12.2007, 14:53 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 39
Регистрация: 24.11.2007
Где: Узбекистан, Ташке нт.

Репутация: -1
Всего: нет



Вместо OR попробуй использовать " || "
PM MAIL ICQ GTalk   Вверх
DRUG_ADDICT
Дата 16.12.2007, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



Цитата(skyboy @  16.12.2007,  13:28 Найти цитируемый пост)
empty - проверяет переданный параметр на "не пустоту".
если переменная иммет значение:

    * "" (пустая строка)
    * 0 (0 как целое число)
    * "0" (0 как строка)
    * NULL
    * FALSE
    * array() (пустой массив)
    * var $var; (переменная объявлена, но её не присвоенно значение)

то функция возвращает true. Иначе - false.


пробовал: 
Цитата(misterio @  16.12.2007,  14:53 Найти цитируемый пост)
Вместо OR попробуй использовать " || " 

т.к. делал получалось что то типа этого:

Код

if (empty($TURBINA1) && empty($TURBINA2) or empty($TURBINA3) || empty($TURBINA4)) 

дает синтаксическую ошибку

Кстати за это:
Цитата(skyboy @  16.12.2007,  13:28 Найти цитируемый пост)

    * "" (пустая строка)
    * 0 (0 как целое число)
    * "0" (0 как строка)
    * NULL
    * FALSE
    * array() (пустой массив)
    * var $var; (переменная объявлена, но её не присвоенно значение)


Как мне сделать? Так?
Код

if ($tovar == "" or $strona == "" or $oblost == "" or $gorod == "" or $fio == "" or $indecs == "" or $email == "" or $adress == ""){



Это сообщение отредактировал(а) PARROT - 16.12.2007, 20:28
--------------------
ICQ# 23-23-30 What can i do for you ? Paid..."Свобода лечит лучше всего" А.С. Неил. Самерхилт.
PM ICQ Jabber   Вверх
HotHead
Дата 16.12.2007, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 67
Регистрация: 26.10.2007

Репутация: 3
Всего: 4



DRUG_ADDICT, можете тупо поставить везде отрицание. Т.е.
Код

if (!$tovar or !$strona or !$oblost or !$gorod or !$fio or !$indecs or !$email or !$adress)


Хотя красивее и предпочтительней разобраться с empty.
PM MAIL   Вверх
Feldmarschall
Дата 16.12.2007, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



misterio, дурацкий совет.
Не пиши того, в чем не разбираешься.

DRUG_ADDICT, ошибку у тебя выводит потому, что ты заполнил не все нужные поля.

Вообще, твоя манера письма отбивает всякую охоту с тобой разговаривать.


 ! 
PARROT
Уважаемый Feldmarschallпожалуйста, будьте так добры, смените ВАШ ТОН РАЗГОВОРА. И Везде пожалуйста!

PM   Вверх
DRUG_ADDICT
Дата 16.12.2007, 18:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



HotHead СПАСИБО!!!

Проблема решена. Тему можно закрывать. 



Это сообщение отредактировал(а) PARROT - 16.12.2007, 20:29
--------------------
ICQ# 23-23-30 What can i do for you ? Paid..."Свобода лечит лучше всего" А.С. Неил. Самерхилт.
PM ICQ Jabber   Вверх
Feldmarschall
Дата 16.12.2007, 19:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



Да, это я тупанул. От чересчур большого усердия.

HotHead, после $tovar = $_POST['tovar'];, empty уже не имеет смысла. Особенно, если не углубляться в материи на тему считается ли заполенным поле, если в него ввели ноль и он является допустимым значением =)

И пожелание большинству участников этой темы - разобраться, всё-таки, почему работает !$tovar, $tovar=="", empty($tovar) и не работает $tovar==0



Это сообщение отредактировал(а) Feldmarschall - 16.12.2007, 19:26
PM   Вверх
DRUG_ADDICT
Дата 16.12.2007, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 136
Регистрация: 10.8.2007

Репутация: нет
Всего: нет



Цитата(Feldmarschall @  16.12.2007,  19:02 Найти цитируемый пост)
И пожелание большинству участников этой темы - разобраться, всё-таки, почему работает !$tovar, $tovar=="", empty($tovar) и не работает $tovar==0

Да какбы $tovar==0 то работает тока просто опер IF ждет от переменой целочисленное число/значение а получает буквы и не че понять не может smile) если в моя форма заполнялась только числами я думаю это условие работало бы на УРА! smile 


 ! 
PARROT
Дорогой друг! Пожалуйста, пользуйтесь русским языком в своих постах как можно больше! Слэнг оставьте для подворотни. Спасибо. 



--------------------
ICQ# 23-23-30 What can i do for you ? Paid..."Свобода лечит лучше всего" А.С. Неил. Самерхилт.
PM ICQ Jabber   Вверх
Feldmarschall
Дата 16.12.2007, 20:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок
****


Профиль
Группа: Участник
Сообщений: 2641
Регистрация: 11.12.2007

Репутация: 22
Всего: 32



Нет, это неправильное объяснение. Оператор IF мало того, что ничего не ждет, так он ещё и не умеет вообще работать ни с какими переменными, кроме булевых. В данном случае имеет смысл говорить об операторе ==
который тоже ничего не ждет, но зато преобразовывает. Что во что - написано по ссылке, которую я давал выше.
Хотя, пожалуй, стоило дать вот эту: http://www.php.net/manual/ru/types.comparisons.php
Она понагляднее будет. Хотя объяснения все равно - в предыдущей.
PM   Вверх
  
Закрытая темаСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1156 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.