Forum Webscript.Ru
Программирование => PHP => Тема начата: grinder от 30 Мая 2003, 18:49:12
-
Странная проблема. Передаю из формы в скрипт методом POST переменную $tmp. Если пишу запрос в базу так:
$query = "INSERT INTO materials(name) VALUES (\\"$HTTP_POST_VARS[\'tmp\']\\")";
то в таблицу не пишется ничего. Причем ошибка тоже не выдается. То есть такое впечатление, что просто пустое значение пытаюсь писать в базу. Если же написать перед действиями с базой строчку echo $HTTP_POST_VARS[\'tmp\']; то значение этой переменной спокойно в браузер выводится.
Если поступить немного иначе:
$zzz = $HTTP_POST_VARS[\'tmp\'];
$query = "INSERT INTO materials(name) VALUES (\\"$zzz\\")";
То все работает как надо.
Мистика какая-то, граничащщая с бредом. Помогите.
-
$query = "INSERT INTO materials(name) VALUES (\\"".$HTTP_POST_VARS[\'tmp\']."\\")";
и еще addslashes не мешало бы
-
addslashes не помешало бы, если бы РНР сам не добавлял бы.
а ошибок нет потому, что их вывод отключен.
-
Если бы вывод ошибок был отключен, то на другие неправильные запросы он бы тоже не ругался, что не так. И я бы не был бы удивлен тем, что именно на этот запрос нет ошибки. На самом деле ошибки, в плане синтаксиса, нет, ибо он вставляет в таблицу пустое значение, а не просто прекращает работу.
Ali спасибо, все заработало.
-
Ну что за люди, а?
Говоришь им, уму разуму учишь, а они не понимая вообще ничего, вместо того, чтобы прислушаться, начать роликами швелить в направлении решения - отмахиваются. начинают что-то лопотать про удивление, про свои рассуждения...
Куда катится этот мир...
и ведь завтра опять с парсе еррором прибежит
-
а чего бы не делать так
$query = "INSERT INTO materials(name) VALUES (\'$tmp\')";
или обязательно из $http_post_vars вынимать?
-
register_globals = off
-
ромочка, не прибегу я с парсе еррором, не боись. Али ответил нормально, я иму сказал спасибо не кривя душой. По делу ты ничего не сказал на самом деле, а просто пробубнил что-то невнятное из под нижней губы в отношении лохов-новичков и сам облажался. Все у меня нормально с выводом ошибок не второй раз вижу пхп, а просто давно это все не трогал, ибо есть не менее интересные вещщи на этом свете. Не бери на себя многого, дорогой друг, будет и в твоё колесо дубовая палка. Не обижайся, обнимаю, не болей. :)
-
Всем остальным, исключая малютку Ромочку:
спасибо ребята, все нормально уже, просто подзабыл как делается это по человечески. И register_globals у меня off, и обязательно все вытаскивать из $http_post_vars. Все отлично, всем удачи.
-
сначала человек нагло врет в глаза, утверждая, что код
$query = "INSERT INTO materials(name) VALUES (\\"$HTTP_POST_VARS[\'tmp\']\\")";
что-то у него там вставляет в базу, и не вызывает ошибок,
потом в ответ на прямое и недвусмысленное указание, где смотреть, начинает вести себя совсем непотребно.
Если простая и понятная фраза "ошибок нет потому, что их вывод отключен" для тебя - бубнение то тебе срочно надой пойти к лор-врачу, у тебя со слухом большие проблемы.
-
Рома успокойся, да ты крут без сомнения. Читай внимательно посты людей, которым показываешь свою мегакрутость. С тобой бессмысленно говорить, дальше своего носа не видишь ничего. Гуд лак.
-
Давненько я не встречал здесь людей, которые будучи настолько неправы, еще и так нагло себя вели.
-
RomikChef
Я конечно, ничего против тебя не имею, но grinder прав:
Из-за своей крутости, ты ничего знать не желаешь, и чтобы это показать, ты вместо помощи (за ней собственно сюда люди и приходят) смеешься над глупостью людей и всячески унижаешь авторов.
Но, это только мое мнение, ничего личного
-
$HTTP_POST_VARS нежелателен для использования.. используйте $_POST? конечно если версия php не ниже 4.1.0
-
F.A.K.K.2, к твоему сведению, мне абсолютно наплевать на крутость, на то, как ко мне относится всякое ламерье, и как оно оценивает само себя.
Если бы ты дал себе труд (я понимаю, что для тебя он непосильный, но все же) вместо чтения моралей, прочитать этот тред от начала до конца, взять код из самого первого вопроса, запустить его, прочитать мой комментарий самый первый, то твой ответ здесь был бы гораздо более осмысленным. А без этого то, что ты написал - это детский лепет.
-
закрыли тему. хотите выяснять отношения - шлите друг-другу ПС или в крайнем случае если надо прелюдно пиписьками меряться - создавайте ветку во флейме.