[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: использование оператора OR в sql запросе
Страницы: 1, 2
Линар
Здравствуйте. Помогите исправить ошибку, необходимо что бы использовался оператор OR, запрос выполняется если одна или другая переменная заполнена.

$strSQL = "UPDATE Tovar SET  ".$_POST["user"]." = (".$_POST["user"]." -" .$_POST["kolvo"].")  where id=" . (int)$_POST["tovar"]. OR Art= .(int)$_POST["Art"].;
Ramzes_Ra
$tovar = (int)$_POST["tovar"];
$Art = (int)$_POST["Art"];
$user = $_POST["user"];
$kolvo = $_POST["kolvo"]; // кроме присвоения нужно выполнить проверки на вредный код
$res = $user." - ".$kolvo;

$strSQL = "UPDATE `Tovar` SET `$user` = '$res' WHERE `id`= '$tovar' OR `Art`= '$Art'";

ты в кавычках запутался, не там стояли. Я просто сделал божеский вид
Линар
Ramzes_Ra
ДА я вижу что божественный=) хорошо попробую, спасибо тебе
Линар
Ramzes_Ra
не правильно отнимает=) он мне сразу в 0 записывает
мне ведь надо что бы он отнимал от количества который записан в базе
Ramzes_Ra
Цитата (Линар @ 1.09.2013 - 15:04)
Ramzes_Ra
не правильно отнимает=) он мне сразу в 0 записывает
мне ведь надо что бы он отнимал от количества который записан в базе

Это числа что ли? Я думал строковое выражения, просто ты так выделил
Цитата
".$_POST["user"]." -" .$_POST["kolvo"]."

вот для чисел
$tovar = (int)$_POST["tovar"];
$Art = (int)$_POST["Art"];
$user = (int)$_POST["user"];
$kolvo = (int)$_POST["kolvo"];
$res = $user - $kolvo;

$strSQL = "UPDATE `Tovar` SET `$user` = '$res' WHERE `id`= '$tovar' OR `Art`= '$Art'";
Линар
Ramzes_Ra
biggrin.gif опять проблема, у меня user строковое выражение, и остальное всё числа
Ramzes_Ra
Цитата
у меня user строковое выражение, и остальное всё числа

Цитата
$_POST["user"]." -" .$_POST["kolvo"]

ты из строкового вычитаешь число в своём запросе
Линар
Ramzes_Ra
ой извини что запутал, да у меня всё числа, но после твоего кода для чилел он пишет Unknown column '0' in 'field list'
Ramzes_Ra
Цитата
SET  ".$_POST["user"]." = (".$_POST["user"]." -" .$_POST["kolvo"].")

как поле называется в таблице, в которое нужно вставить результат вычитания?
Линар
<select name='user'>
<option value=''>-- Я --</option>;
<option value='Almaz'>-- Алмаз --</option>;
<option value='Linar'>-- Линар --</option>;
</select>
Вот у меня что в поле user, в бд столбцы almaz, linar
я ж говорил
Ramzes_Ra
Цитата
в бд столбцы almaz, linar

и в какой из столбцов нужно вставить результат вычитания?
Линар
Ramzes_Ra
В который я выберу из поля со списком выше же код написал. У меня нет таблицы где имя присваивается свой id, у меня напрямую мне так удобнее
Линар
Ramzes_Ra

Все таки мой код работал=)
Линар
user posted image
поля almaz, linar числовые
Ramzes_Ra
Цитата (Линар @ 1.09.2013 - 15:40)
user posted image
поля almaz, linar числовые

всё понял, тогда так сделай, только под себя подправь
$tovar = (int)$_POST["tovar"];
$Art = (int)$_POST["Art"];
$user = $_POST["user"];
$kolvo = (int)$_POST["kolvo"];
$strSQL = "UPDATE `Tovar` SET `$user` = 'ЧТО НУЖНО ВСТАВИТЬ' WHERE `id`= '$tovar' OR `Art`= '$Art'";
Быстрый ответ:

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