anton000: Там перед titile ещё идёт строка "UPDATE menu SET и здесь есть " и её нужно чем то закрыть. Она в начале, и что-то должно быть в конце.
ладно проехали сейчас со всем этим, распокавал архив... текстовый дамп sql хде?
---------- Добавлено 27.06.2013 в 18:59 ----------
вообщем то меня радует такое доверие... но в данном случае обилие информации скорее минус чем + :) ибо тупо локализовать проблему будет трудно с таким обилием лишней инфо.
---------- Добавлено 27.06.2013 в 19:04 ----------
anton000: Цвет, после этой строчки другой, значит, как я понимаю, что-то в этой строке не того.
ну да. не того, там наворочено столько кавычек что без поллитры не разобрать...
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id=''' at line 4
UNIT-IS: Предлагаю попробовать такой вариант (из опыта с подобной проблемой):
Ну по сути это палкой в небо, уж простите за каламбур... нужно понять от чего это случилось. Понять где ошибка, а она тут в двух местах может только быть. Ваш эмперический метод тоже имеет место быть... но КПД его, сомнения вызывают.
TF-Studio: Вот никогда с миллионом тупых вопросов не лез на форум. 99% проблем уже решено, надо их только найти в поиске!
Ну значит вы выше этого, уникум, таких как вы мало, радуйтесь. Мне вот в радость помочь ближнему если душа лежит, а вам поворчать? ;)
---------- Добавлено 27.06.2013 в 18:21 ----------
anton000:
Так же написал - 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id=''' at line 4
ну друг мой вы на верном пути... как я и был уверен mysql_error всему виной... давайте я пока не буду открывать ваш архив... самому то интереснее... не правда ли ? Там какая-то ошибка... не сложная...
mark2011: Не завидую я тому заказчику, который к вам обратится...
чего все накинулись, забыли как недавно сами тупили по страшному и так-же с вырчанием на спец форумах нас поправляли и наставляли... конечно... теперь мы знаем на немножко побольше, спецы... етить. Пусть уж php интересуется чем по подьездам клей нюхает. Это немножко больше пользы.
з.ы верно к чему столько негатива и общих фраз, есть что сказать по существу? ;)
кмх, а ты уверен что id это у тебя строка ? обычно id это число. Это мне если честно парится особенно на форуме не охота, тем более я счас отдыхаю... кхм культурно. Если уж так хочешь собери мне архив с дампом и сценариями, я поправлю.
а вообще я уже указал что скорее всего у тебя ошибка в последнем запросе к mysql.
в update.php после запроса добавь echo mysql_errno() . ": " . mysql_error() . "\n"; и посмотри на результат.
з.ы практика лучшее средство обучения, бывало что и пару ночей не спишь пока какую ошибку ищещь, это забавно и познавательно...
anton000: Как, понять - "привести к int переменную, 5 строк кода"
ну вот тут ты тупо присваиваешь переменной значение из глобального массива.
$res = $_POST["id"];
это не правильно в плане безопасности. Ты должен четко указать php какую переменную ты ждешь... int() - привести к числовому значению, это значит что ты укажешь php что ты ждешь ТОЛЬКО число. там еще есть string() строка. ну и так далее. http://www.php.su/learnphp/vars/?types
суть в том что в эту переменную можно засунуть что угодно ну и взломать сценарий... если ты будешь четко указывать какие типы переменных ты ждешь, безопасность будет в безопасности :) а насчет 5 строк, твой сценарий маленький... да и больше на тренировочный смахивает.
---------- Добавлено 27.06.2013 в 17:16 ----------
TF-Studio, мир, одуванчики, негатив портит жизнь, писс одним словом :)
отвечают что типа все берут прям с сайта и все у них хорошо..
С юмором ребята.
lego178, не понятно одно, зачем все это сувать в joomla... точь в точь сделать без напряга поможет iframe.
ну да, я сделал посредством hidden. http://www.zalil.ru/upload/34609444 там работы было на 5 минут. типичная ошибка.
ладно я окончательно спать :) удачи :)
txt 10 раз.
з.ы листинг
config.php
echo "<br>Привет";
?>
всио правильно ?
Там перед titile ещё идёт строка "UPDATE menu SET и здесь есть " и её нужно чем то закрыть. Она в начале, и что-то должно быть в конце.
ладно проехали сейчас со всем этим, распокавал архив... текстовый дамп sql хде?
---------- Добавлено 27.06.2013 в 18:59 ----------
вообщем то меня радует такое доверие... но в данном случае обилие информации скорее минус чем + :) ибо тупо локализовать проблему будет трудно с таким обилием лишней инфо.
---------- Добавлено 27.06.2013 в 19:04 ----------
Цвет, после этой строчки другой, значит, как я понимаю, что-то в этой строке не того.
ну да. не того, там наворочено столько кавычек что без поллитры не разобрать...
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id=''' at line 4
у меня листинг совсем не такой :)
include "bd.php";
echo $rt;
$a = " UPDATE menu SET title= ' " . $_POST[title] . " ', title_url=' " . $_POST[title_url] . " ', parent=' " . $_POST[parent] . " ' WHERE id=' " . $res . " ' ";
$b = mysql_query($a);
echo mysql_errno() . ": " . mysql_error() . "\n";
if($b) {
echo "Категории обновились";
}
else echo "Категории не обновились";
?>
я окончательно запутался.
мой notepad говорит что вы жестоко ошибаетесь. там идут одинарные кавычки.
мой notepad врет? вы поправили сценарий и у вас не получилось? мне открывать ваш архив?
блин хотя там навороченно... этих кавычек как моих сапог, в общем дело в них 100% уже.
или так
Вы знаете как эту ошибку исправить?
предполагаю что да... это ошибка синтаксического хар-ра.
у вас
WHERE id='" . $res . "'";
нужно
---------- Добавлено 27.06.2013 в 18:36 ----------
Простите, ошибся, в данном случае нельзя использовать WHERE clause. Что бы поставить условие нужно использовать IF().
честно, ничего не понял... WHERE... ну где id равен 1 к примеру... и каким образом это нельзя использовать ?
p/s могу жестоко ошибаться... но по дебагу mysql ошибка именно в синтаксисе.
Предлагаю попробовать такой вариант (из опыта с подобной проблемой):
Ну по сути это палкой в небо, уж простите за каламбур... нужно понять от чего это случилось. Понять где ошибка, а она тут в двух местах может только быть. Ваш эмперический метод тоже имеет место быть... но КПД его, сомнения вызывают.
Вот никогда с миллионом тупых вопросов не лез на форум.
99% проблем уже решено, надо их только найти в поиске!
Ну значит вы выше этого, уникум, таких как вы мало, радуйтесь. Мне вот в радость помочь ближнему если душа лежит, а вам поворчать? ;)
---------- Добавлено 27.06.2013 в 18:21 ----------
Так же написал - 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id=''' at line 4
ну друг мой вы на верном пути... как я и был уверен mysql_error всему виной... давайте я пока не буду открывать ваш архив... самому то интереснее... не правда ли ? Там какая-то ошибка... не сложная...
Не завидую я тому заказчику, который к вам обратится...
чего все накинулись, забыли как недавно сами тупили по страшному и так-же с вырчанием на спец форумах нас поправляли и наставляли... конечно... теперь мы знаем на немножко побольше, спецы... етить. Пусть уж php интересуется чем по подьездам клей нюхает. Это немножко больше пользы.
з.ы верно к чему столько негатива и общих фраз, есть что сказать по существу? ;)
$res = (string) $_POST[id];
кмх, а ты уверен что id это у тебя строка ? обычно id это число. Это мне если честно парится особенно на форуме не охота, тем более я счас отдыхаю... кхм культурно. Если уж так хочешь собери мне архив с дампом и сценариями, я поправлю.
а вообще я уже указал что скорее всего у тебя ошибка в последнем запросе к mysql.
в update.php после запроса добавь echo mysql_errno() . ": " . mysql_error() . "\n"; и посмотри на результат.
з.ы практика лучшее средство обучения, бывало что и пару ночей не спишь пока какую ошибку ищещь, это забавно и познавательно...
Как, понять - "привести к int переменную, 5 строк кода"
ну вот тут ты тупо присваиваешь переменной значение из глобального массива.
$res = $_POST["id"];
это не правильно в плане безопасности. Ты должен четко указать php какую переменную ты ждешь... int() - привести к числовому значению, это значит что ты укажешь php что ты ждешь ТОЛЬКО число. там еще есть string() строка. ну и так далее. http://www.php.su/learnphp/vars/?types
суть в том что в эту переменную можно засунуть что угодно ну и взломать сценарий... если ты будешь четко указывать какие типы переменных ты ждешь, безопасность будет в безопасности :) а насчет 5 строк, твой сценарий маленький... да и больше на тренировочный смахивает.
---------- Добавлено 27.06.2013 в 17:16 ----------
TF-Studio, мир, одуванчики, негатив портит жизнь, писс одним словом :)