[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Странная ошибка оО
Страницы: 1, 2, 3
twin
Да не правильно же... Не в кавычках там дело. Апострофы на месте были. Саму структуру запроса нужно было смротреть.
mysqlQuery("UPDATE `produkts` 
SET `name` = '"
.$name."',
`description` = '"
.$description."',
`text` = '"
.$text."',
`meta_k` = '"
.$meta_k."',
`meta_d` = '"
.$meta_d."'");


Кстати, ничего, что обновятся все записи?

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Tokugava
В том то и проблема... так как вы сказали и происходит, все товары обновились как один. Незнаю что и делать... пробовал воткнуть WHERE $cat_id = 'cat_id' но не выходит ничего... куда это писать не представляю.
Пробовал вот так:

mysqlQuery("UPDATE `produkts` 
SET `name` = '"
.$name."',
`description` = '"
.$description."',
`text` = '"
.$text."',
`meta_k` = '"
.$meta_k."',
`meta_d` = '"
.$meta_d."'
WHERE
$cat_id = 'cat_id'");

Но ничего не получается... синтаксис языка я еще ОЧЕНЬ плохо знаю. sad.gif

_____________
人類の敵
Чем умнее человек, тем легче он признает себя дураком!
krasilich
ВОт, так правильнее

mysqlQuery("UPDATE `produkts`
SET `name` = '"
.$name."',
`description` = '"
.$description."',
`text` = '"
.$text."',
`meta_k` = '"
.$meta_k."',
`meta_d` = '"
.$meta_d."'
WHERE cat_id = '"
.$cat_id."'");
Tokugava
Вот так и написал, ошибок нет но не обновляет ничего. Товар назывался "тестовый", в форме редактирования изменил на тестовый1, отправил, в БД не обновилось...

Отладочная инфа вот что пишет:
Отладочная инфа:

Array
(
[
name] => Тестовыйааааааааааааа
[description] =>

11111111Поле для ввода краткого описанияsdfsdf

[text] =>

111111111111111sdf

[meta_k] => 1111111
[meta_d] => Ввод описания товара для поисковой системы.
[
save] => Сохранить
)


Тоесть все нормально, но на сайте и в БД ничего не меняетсо.

_____________
人類の敵
Чем умнее человек, тем легче он признает себя дураком!
krasilich
Значит нет такого поля cat_id со значением, которое передаеться в переменной.
Точно использовали мой вариант а не свой???
Guest
И поле есть, и использовал ваш вариант точно sad.gif
Вот структура таблички produkts:
id (INT)
title
name
cat_id (INT)
meta_k
meta_d
description
text
Tokugava
Есть еще файлик, тож все вроде правильно но вовсе ошибка Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING

Вот он:
mysqlQuery("
UPDATE `categories` SET

`name` = "'.$name.'", ---Вот в этой строке

`description` = "'.$description.'"
WHERE id = '"
.$id."'"
);

echo '<h3>Категория успешно обновлена</h3>';
echo '<a href="new_product.php" style="color: #000">Добавить товар</a>';


_____________
人類の敵
Чем умнее человек, тем легче он признает себя дураком!
John_761
Ошибка
"..."'.$name.'"..."

надо так
"...'".$name."'..."

а потом будет и тут ошибка
"..."'.$description.'"..."

надо так
"...'".$description."'..."


Вообще, в чем смысл ? Мы хотим, чтобы в запросе значение переменной было обрамлено одинарными кавычками
Tokugava
Переделал ошибка пропала, проблема осталась... не обновляетсо инфа в БД.

Вот структура таблички produkts:
id (INT)
title
name
cat_id (INT)
meta_k
meta_d
description
text


Вот пхп код:
// Обрабатываем данные из формы и добавляем товар в БД

// 1. Убираем пробелы слева и справа переменной (функция trim)
// 2. Экранируем перед записью в БД (наша функция escapeString)

$id = (int)$_POST['id'];
$cat_id = (int)$_POST['cat_id'];
$name = escapeString(trim(stripcslashes($_POST['name'])));
$description = escapeString(trim(stripcslashes($_POST['description'])));
$text = escapeString(trim(stripcslashes($_POST['text'])));
$meta_k = escapeString(trim(stripcslashes($_POST['meta_k'])));
$meta_d = escapeString(trim(stripcslashes($_POST['meta_d'])));



// Если ok установлена
if (isset($_POST['save']))
{
// Если есть $name и $description заполнены - сохраняем в БД
if (!empty($name) && !empty($description) && !empty($text))

{
/* Здесь пишем что можно заносить информацию в базу */
mysqlQuery("UPDATE `produkts`
SET
`name` = '"
.$name."',
`description` = '"
.$description."',
`text` = '"
.$text."',
`meta_k` = '"
.$meta_k."',
`meta_d` = '"
.$meta_d."'
WHERE cat_id = '"
.$cat_id."'
"
);


Из за чего тут может быть проблема с обновлением в БД?

_____________
人類の敵
Чем умнее человек, тем легче он признает себя дураком!
Быстрый ответ:

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