По стандарту браузер не обязан кнопку отправлять, если не было по ней клику.
enter по полю ввода инициирует отправку формы. 1+1 = форма отправлена, но кнопка нажата не была.
Да, Вы правы. На кнопку submit автоматически нажимают действительно не все браузеры. Мой IE8 отказался это делать (тестировал также в chrome,ff,Opera - в них работает). Можно, конечно, подставить "костыль" в виде JS-кода, автоматически кликающего на кнопку, но проще, действительно, делать так, как Вы сказали. Спасибо за информацию.
Потому что document.write в Вашем случае перезаписывал содержимое body документа. Поэтому возникало ощущение, что сообщение "открывается в новом окне". Я же переделал вывод этого сообщения таким образом, чтобы оно записывалось в отдельный div. (Добавление)
Метод document.write(str) корректно работает только пока HTML еще не догружен (http://learn[dot]javascript[dot]ru/document-write ) (Добавление)
Если document.write вызвать после того, как страница загрузилась, результат во всех браузерах будет примерно одинаков — пустая страница и, возможно, тот текст, который был выведен последним document.write. (http://alljs[dot]ru/articles/document-write )
Извините. По-видимому, тут я чего-то недопонимаю. В каком случае (при наличии кнопки отправки) она может быть не нажата, но форма отправлена? В случае автоматически созданного запроса?
Извините что вмешиваюсь, хочу спросить, то есть чтобы при F5 одни и те же данные не заносились снова в базу данных, надо применить заголовок header Location, т.е при обновлении сделать перенаправление как здесь написано? Просто у меня такая же проблема, сделал форму для загрузки картинок и при обновлении она снова записывается в базу
Ну да, перенаправление. Это при условии, что всё остальное правильно сделано. Например, надо не забывать о проверке, отправлена ли форма, то есть нажата ли кнопка submit.
Сделал так пишет Error но картинки удаляются ... странно
Та ничего странного. функция remover() просто ничего не возвращает. Сделайте так, чтобы в случае успешного удаления она возвращала true, в противном случае false. И будет писать правильно.
Файлы получил. Нашёл ошибку, из-за которой не работает header(location:...): в файле database_connection.php после закрывающего тега (?>) присутствует ещё одна строка с пробелами. Для избежания подобных ошибок в дальнейшем рекомендую не закрывать тег ?> в конце файла, если он оканчивается php-кодом. (Добавление)
То есть вместо
(Добавление)
Сейчас всё проверю и вышлю на почту исправленный вариант. (Добавление)
В файле index1.php надо не просто добавлять запись в БД, но ещё и проверять, нажата ли кнопка в форме
именно!!! но я знаю об этом, что нельзя ничего выволить, и втыкал этот хидер и в начало, вcе равно выскакивала, а вот в таком виде кода как сейчас, н7икакой ошибки нету
Вышли мне исходники своего проекта в zip-архиве на почту, я посмотрю, что там не так.