![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
proff89 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 3.3.2008 Репутация: -1 Всего: нет |
Всем привет.
Вот пытаюсь сделать добавление данных, что-то нечто добавления статьи вида: pages.php?act=view&pid=5 но что-то не совсем получается, можете натолкнуть в нужно русло?
проблема в том, что не форма появляется, но после нажатия кнопки запись в базу не происходит, ну и соответственно страница вида: pages.php?act=view&pid=5 не создается. значит как я делал, закомментировал этот участок кода:
после чего проверил насколько рабочее условие непосредственной записи в бд, прописал echo $query2; запрос генерируется запись в базу происходит, правда почему то, сначал то что вводишь, а потом пустая запись, но это не беда, разберусь, интересен процесс, который я закомментирован, именно он не работает, 0 реакции. вот сижу думаю, но не могу понять, почему не выполняется действие case "view": помогите плиз, скоро презащита..... :( |
||||
|
|||||
Feldmarschall |
|
||||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
Для начала научись программировать с отступами.
Отступы нужны там, где одна операция включается в другую. поэтому писать
смысла нет ни малейшего - с точки зрения программы эти операторы равнозначны. А вот там, где нужны отступы - все эти вложенные кейсы и прочее - у тебя чехарда. Когда расставишь отступы - сразу увидишь, что у тебя где не так включено. И логика программы должна быть логичной. Зачем писать, что данные успешно добавлены, ДО того, как они добавляются в БД? Блин. Что у тебя делает default в начале списка?! Добавлено через 14 минут и 6 секунд Если у тебя какой-то кусок программы должен выполняться вообще всегда, то нафига его вообще в свитч запихивать? Соединение с БД у тебя ведь не засунуто туда? А если уж засунул в default в самом начале, то Break-то тогда зачем писать? ты выполняешь код при любом значении свитча а потом его останавливаешь! То есть, остановка происходит в любом случае. Вот как должен выглядеть твой код, если его писать не кривыми руками: обрати внимание на новые значения директивы error_reporting и запроса SET - они должны быть именно такими, как я написал
Это сообщение отредактировал(а) Feldmarschall - 20.5.2008, 12:17 |
||||
|
|||||
proff89 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 3.3.2008 Репутация: -1 Всего: нет |
Feldmarschall,
спасибо за помощь, но при нажатии на "добавить" ничего не происходит :( т.е до добавления дело даже не доходит, иначе echo $query2; вывел бы запрос... помоги, плиз до конца добить вопрос Это сообщение отредактировал(а) proff89 - 20.5.2008, 23:14 |
|||
|
||||
Feldmarschall |
|
||||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
а что должно происходить, родной? а по какой причине? а эта причина присутствует? а внимательно посмотреть на свой браузер, разув глаза и не надеясь на дядю с форума?
я понимаю, что каждый, приходя на форум, выключает голову. И не видит ошибок, которые самостоятельно решил бы в два счета. но уж опечатки-то можно самостоятельно исправить? разобраться что ты куда посылаешь?! мне хочется, чтобы из того, что я говорил, хотя бы 10% было понято, а не "спасибо за рабочий код, я пошел", а знаний сколько было - столько и осталось. Можно хоть раз в жизни задуматься над своим кодом, а не совершать привычные два действия: надыбать код в инете и попросить в форуме исправить, если не работает? да, и забыл совсем самое главное исправление.
Это сообщение отредактировал(а) MoLeX - 28.5.2008, 13:07 |
||||
|
|||||
proff89 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 3.3.2008 Репутация: -1 Всего: нет |
Feldmarschall, извини, что сразу не отписался, приболел немного.
но до добавления дело так и не доходит... :(
|
|||
|
||||
proff89 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 3.3.2008 Репутация: -1 Всего: нет |
Feldmarschall, за помощью обратился, поможешь?
помоги пожалуйста, послезавтра предзащита... почти всё готово, осталось это сделать... |
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
Если у тебя в коде ошибки происходят, ты их видишь?
скажем, имя функции неверно написал, или скобку не закрыл? |
|||
|
||||
proff89 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 3.3.2008 Репутация: -1 Всего: нет |
Feldmarschall, так смысл в том, что ошибки видимой нет, вывод к примеру сообщений из таблицы pages работает, а вот до условия добавления почему-то дело не доходит... echo $query2; не выводит sql запрос на экран, из чего я делаю вывод, что до добавления не доходит очередь...
|
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
Если у тебя в коде ошибки происходят, ты их видишь?
скажем, имя функции неверно написал, или скобку не закрыл? |
|||
|
||||
proff89 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 3.3.2008 Репутация: -1 Всего: нет |
Feldmarschall, скобки проверил, все наместе...
оставил только:
действие не выполняется, как будто его нет :( |
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
Неужели я непонятно по-русски пишу?
ЕСЛИ, вдруг, случайно, ты допускаешь какую-нибудь ошибку в коде, например неправильно имя функции написал, то видишь ли ты при этом сообщение об ошибке? Или просто чистый экран? Видел ли ты вообще хоть одно сообщение об ошибке при работе со своим кодом? Можно на этот вопрос ответить, а не кидаться переписывать по десятому разу один и тот же код? почему надо выискивать в вопросе 10 смыслов, вместо того, чтобы просто и прямо на него ответить? Добавь в начало скрипта строчку ini_set('display_errors',1); а в каталог со скриптом файл .htaccess со строчкой php_flag display_errors 1 и снова запусти свой многострадальный скрипт. который выдаст тебе ошибку. которая всегда была, но которую ты просто не видишь. Хотя опять же, может и не выдать. но как писать программы, не видя сообщений об ошибках - я себе не представляю. Это как машину водить с завязанными глазами. Добавлено через 7 минут и 18 секунд Хорошо, можно без ошибок, логикой. От выполнения какого условия у тебя зависит - будет выполняться добавление, или нет? |
|||
|
||||
proff89 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 3.3.2008 Репутация: -1 Всего: нет |
Feldmarschall, повторюсь ещё раз, нет ошибки на экране, просто остается форма, перекидывает на dobav_st.php?page=add&ok=1 всё, после:
не появляется сообщение об ошибке... ошибка только с нотисом ругается на switch($_GET['act']) { |
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
ох. ре. неть
убейте меня кто-нибудь. не появляется сообщение об ошибке. ошибка только с нотисом. РНР его носом тычет в ошибку - "вот она! Здесь у тебя проблема!!! откуда у тебя эта переменная? С чего ты взял, что она у тебя есть?". Исполнение кода зависит от значения этой переменной. Если у нас нотис - значит, переменной нет. значит, поэтому код и не выполняется. Но у нас все хорошо, прекрасная маркиза. ошибок нет - только нотис. нотис - это не ошибка. Это досадное недоразумение, придумали какие-то дураки, неизвестно, для чего. |
|||
|
||||
proff89 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 3.3.2008 Репутация: -1 Всего: нет |
Feldmarschall, аха, дело не в нотисе, обычное добавление работает, хотя ошибка с нотисом присутствует, так что не тут ошибка...
|
|||
|
||||
krundetz |
|
|||
![]() Вечный странник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 1 Всего: 69 |
Feldmarschall спокойне. А вам proff89 советую выводить все значения используемых переменных в процесе выполнения скрипта. Тоесть передаем какую нибудь переменную в функцию посмотрим а что она из себя представляет. Изменяем переменную на что нибудь посмотрим что получилось. Должен прийти в скрипт массив значений посмотрим что пришло и т.д. и т.п. Для этого есть две такие замечательные функции как var_dump() и print_r(). Очень знаете ли облегчает жизнь визуально наблюдение за продвижением работы скрипта.
Это сообщение отредактировал(а) krundetz - 28.5.2008, 11:08 |
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
Жесть. Логики в рассуждениях ноль целых, ноль десятых.
Показываешь человеку место, где ошибка - а он тебе объясняет, что, следуя его умозаключениями - не здесь =) Добавлено @ 12:39 krundetz, здесь вар-дамп не поможет. Эта функция помогает тем, кто представляет себе, как работает программа. Тому, кто просто скопировал код и не знает, что означают все эти кейсы и $_GET - оно как рыбке зонтик. Да и в данном случае вар-дамп не нужен, чтобы узнать значение переменной - пхп и так его выводит. Здесь нужно просто понимать смысл своих действий. Это сообщение отредактировал(а) Feldmarschall - 28.5.2008, 12:40 |
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
Ошибка с нотисом присутствует. Любая. С любым нотисом. ох, не зря я в свое время писал - они не понимают, что у сообщения ошибки есть не только сам факт его появления, но и смысл. То есть, если в магазине человек покупает два кило колбасы, и ему один раз говорят - "у вас же сумки нет", а другой раз - "у вас денег нет" - то для таких вот программистов это одно и то же. Предупреждение, что чего-то нет. Можно не слушать, чепуха какая-то. И продолжать удивляться, что не продают. |
|||
|
||||
MoLeX |
|
|||
![]() Местный пингвин ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4076 Регистрация: 17.5.2007 Репутация: 7 Всего: 140 |
Это сообщение отредактировал(а) MoLeX - 28.5.2008, 14:29 -------------------- Amazing ![]() |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Базы Данных | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |