Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Проблема с $_POST в ie
Покинул форум
Сообщений всего: 7
Дата рег-ции: Нояб. 2010
Помог: 0 раз(а)
Добрый день (или ночь). Кто может помочь с такой проблеммой. Перерыл весь инет, поломал голову, но никак не могу добиться передачи значения через $_POST в internetExplorer! В Opera и Firefox все срабатывает как задумано. Короче делаю так, на форме находиться кнопка, в свойстве кнопки задано значение которое по идее должно передаваться через суперглобальный массив $_POST. Но вот увы, именно в ie этот код почему то не работает, уже упростил до нельзя! Кто нибудь сталкивался с подобным? может кто знает решение или хотя бы корень проблемы? Или я ошибся где (но сам убейте меня насмерть не вижу).
Привожу код.
Код номер раз (форма):
<form method="post" action="actn.php">
<button value="12" name=btn type=submit>
<img src="0.png" width=100% align=center title="" >
</button>
</form>
Ну и соответственно принимающий код (даже не код а попытка увидеть значение):
<?php
echo $_POST["btn"];
?>
Заранее благодарен за участие...
Zeboton
Отправлено: 10 Ноября, 2010 - 04:15:33
Новичок
Покинул форум
Сообщений всего: 12
Дата рег-ции: Июль 2006 Откуда: Москва
Помог: 1 раз(а)
Попробовал. Как я понял Fx (и другие нормальные браузеры) в качестве value для button считают атрибут value, в то время как IE считает значение то, что помещено в тэг button. Я бы посоветовал использовать JavaScript:
Покинул форум
Сообщений всего: 7
Дата рег-ции: Нояб. 2010
Помог: 0 раз(а)
Спасибо за помощь, но ява отпадает, ту идею что делаю хотелось бы реализовать на php. А насчет : <input type=image src="pic1.png"> я чего то не понял это о чем? Моя задача получить значение value в вызываемом скрипте для дальнейшей обработки. Изображения на кнопке не обязательно и оставлено просто как наполнение кнопки. Вопрос в том как по нажатию кнопки передать значение в вызываемый код.
Zeboton
Отправлено: 10 Ноября, 2010 - 05:44:38
Новичок
Покинул форум
Сообщений всего: 12
Дата рег-ции: Июль 2006 Откуда: Москва
Помог: 1 раз(а)
Clamb пишет:
Спасибо за помощь, но ява отпадает, ту идею что делаю хотелось бы реализовать на php.
Я дал код не Java, а JavaScript. JavaScript обрабатывает данные на стороне клиента, а PHP на стороне сервера. В моём варианте вы получите в PHP нужное значение ($_POST['h']), а что делать с ним дальше — решать вам.
Clamb пишет:
А насчет : <input type=image src="pic1.png"> я чего то не понял это о чем? Моя задача получить значение value в вызываемом скрипте для дальнейшей обработки. Изображения на кнопке не обязательно и оставлено просто как наполнение кнопки.
Здесь имелось в виду, что <button></button> можно заменить на <input />, в свойствах которого или через CSS можно прописать ссылку на картинку. В случае с <input /> проблем для передачи данных из формы, содержащей один элемент возникнуть не должно. Но всё равно может потребоваться JS для подписания формы.
Clamb пишет:
Вопрос в том как по нажатию кнопки передать значение в вызываемый код.
Вопросы в другом. У вас форма имеет один элемент или много? Они формируются динамически или прописаны статично?
Самый простой вариант (без использования JavaScript):
Покинул форум
Сообщений всего: 61
Дата рег-ции: Окт. 2010
Помог: 0 раз(а)
Clamb, да как сказал Zeboton я привел пример как можно картинку вставить вместо кнопки, чтобы передавалось значение нужно использовать CSS если нужна красивая кнопка и не нужен JavaScript.
теперь при отправке формы в $_POST['add'] будет значение Сохранить.
Clamb
Отправлено: 10 Ноября, 2010 - 11:04:11
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Нояб. 2010
Помог: 0 раз(а)
Во, теперь понял про инпут Извиняюсь за тупость, голова уже туго соображает. Но этот вариант я пробовал. К сожалению кнопок много (пока статических) и с каждой должно уходить отдельное значение. А насчет явы и яваскрипта, я просто не в курсе этих тем. Сорри, но у меня свое отношение к яве и ее реализации... Я ищу вариант решения проблемы без использования дополнительных надстроек. Чистый html+css+php.
Но за попытку помощи - ОГРОМНОЕ СПАСИБО! (Добавление)
Сделал так: каждая кнопка в отдельной форме, ну а в ней отдельное скрытое поле со значением. Работает во всех браузерах. Правда изящным решением эт не назовешь
Если у кого появятся какие мысли, буду рад. Спасибо за помощь.
OrmaJever
Отправлено: 10 Ноября, 2010 - 13:16:24
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
Clamb пишет:
не могу добиться передачи значения через $_POST в internetExplorer! В Opera и Firefox все срабатывает как задумано.
InternetExplorer - это такая програма с помощью какой можно зайти на сайт opera.com и скачать себе браузер!
Clamb пишет:
<button value="12" name=btn type=submit>
а вы не пробовали значения в кавычки ставить? <button value="12" name="btn" type="submit">
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
Clamb
Отправлено: 10 Ноября, 2010 - 13:36:13
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Нояб. 2010
Помог: 0 раз(а)
Про эксплорер - да я то только за, но писать приходится не только для умных людей.
А насчет кавычек: а вы сами не пробовали? с ними и без них (это было первое что проверял)... Так что перед советом лучше уж самому проверить, я так думаю
DlTA
Отправлено: 10 Ноября, 2010 - 15:00:55
Постоянный участник
Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010
Помог: 53 раз(а)
Clamb пишет:
Так что перед советом лучше уж самому проверить, я так думаю
странно у всех работает, а у Вас нет, как вариант возможно где то в скриптах опечатка
к примеру в названии метода или еще где нить
Вы смотрели в HTML страницы которую генерит Ваш сервак?, возможно чет там не так
OrmaJever
Отправлено: 10 Ноября, 2010 - 15:37:59
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
Clamb пишет:
Про эксплорер - да я то только за, но писать приходится не только для умных людей.
Можно запретить заходить на сайт с ие. Так же как и при выключеном javascript.
Clamb пишет:
А насчет кавычек: а вы сами не пробовали?
Я не использую ие, но знаю что раньше в ие была такая проблема!
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
Clamb
Отправлено: 10 Ноября, 2010 - 16:36:50
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Нояб. 2010
Помог: 0 раз(а)
OrmaJever пишет:
Можно запретить заходить на сайт с ие. Так же как и при выключеном javascript.
Эх, если бы его всем запретить .. Мечты мечты где ваша сладость...
Но к сожалению не люблю "заборов", и сам их строить не собираюсь... Эт как религия, воспитано с детства
Zeboton
Отправлено: 11 Ноября, 2010 - 07:05:24
Новичок
Покинул форум
Сообщений всего: 12
Дата рег-ции: Июль 2006 Откуда: Москва
Помог: 1 раз(а)
Clamb, во-первых, нужно подтянуть мат. часть.: Java, JavaScript. Это абсолютно разные языки, служащие разным целям.
Во-вторых, JavaScript используют практически все сайты (99,9%) на которых есть какой-либо полезный функционал, особенно всеми так сейчас любимый AJAX.
В-третьих, решение с hidden, это самое верное, надёжное и правильное с точки зрения стандартов. А моё решении с JS предназначено для более навороченных форм.
P.S.
Советую изучить JavaScript, так как 100% пригодиться, а потом jQuery.
----- And remember, respect is everything!
JustUserR
Отправлено: 11 Ноября, 2010 - 09:21:51
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
Clamb В общем случае приведенный вами исходный код формы расположенной на клиентской HTML-странице не обеспечивает ее правильную передачу - дело в том что информационные поля для проведения ввода пользовательских данных обязаны иметь фомат input - в то время как реализация использования остальных тегов производится мануально посредством обеспечения требуемый операций в клиентском JS-скрипте
Браузер Internet explorer в вашем случае обеспечивает единственное коррекнтое и непротиворечивое проведение обаботки формы - в то время как другие используемых обозреватели осуществляют собственную модификацию HTML-кода что в общем случае может приводить к дальнейшим ошибкам - в частности обеспечиваемых за счет передачи нецелевых полей формы
Clamb пишет:
Про эксплорер - да я то только за, но писать приходится не только для умных людей.
Интересным фактом является осуществление нерациональной и нелинейной критики браузера Internet explorer осуществляемой без реального понимания исходной причины возникновения рассматриваемой проблемы - поскольку в одних случаях предметом критики является недостаток специфичиских функций которые в действительноси оказываются доступными в библиотеке MSDN - в то время как в других вариантах таких как предоставленных в текущей теме предметом критики является написание заранее некорректного HTML-кода и проведения браузером IE его корректного исполнения
Тем не менее при рассмотрении реальных и конкретных аспектов решения вопросов - оказывается что возникновение целевых проблем осуществляется именно в браузере Firefox - *объективная* проверка чего возможно при просмотрении ветвей дискуссии раздела Программирования для клиентской стороны
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
Clamb
Отправлено: 11 Ноября, 2010 - 10:50:38
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Нояб. 2010
Помог: 0 раз(а)
JustUserR пишет:
В общем случае приведенный вами исходный код формы расположенной на клиентской HTML-странице не обеспечивает ее правильную передачу - дело в том что информационные поля для проведения ввода пользовательских данных обязаны иметь фомат input - в то время как реализация использования остальных тегов производится мануально посредством обеспечения требуемый операций в клиентском JS-скрипте
Браузер Internet explorer в вашем случае обеспечивает единственное коррекнтое и непротиворечивое проведение обаботки формы - в то время как другие используемых обозреватели осуществляют собственную модификацию HTML-кода что в общем случае может приводить к дальнейшим ошибкам - в частности обеспечиваемых за счет передачи нецелевых полей формы
Интересным фактом является осуществление нерациональной и нелинейной критики браузера Internet explorer осуществляемой без реального понимания исходной причины возникновения рассматриваемой проблемы - поскольку в одних случаях предметом критики является недостаток специфичиских функций которые в действительноси оказываются доступными в библиотеке MSDN - в то время как в других вариантах таких как предоставленных в текущей теме предметом критики является написание заранее некорректного HTML-кода и проведения браузером IE его корректного исполнения
Тем не менее при рассмотрении реальных и конкретных аспектов решения вопросов - оказывается что возникновение целевых проблем осуществляется именно в браузере Firefox - *объективная* проверка чего возможно при просмотрении ветвей дискуссии раздела Программирования для клиентской стороны
Некорректного? Ну даж не знаю уж тогда чему верить. Привожу отрывок из описания параметров тега Button: "...
Тег BUTTON создает на веб-странице кнопки и по своему действию напоминает результат, получаемый с помощью тега INPUT (с параметром type=button | reset | submit). В отличие от этого тега, BUTTON предлагает расширенные возможности по созданию кнопок. Например, на подобной кнопке можно размещать любые элементы HTML, в том числе изображения. Используя стили можно определить вид кнопки путем изменения шрифта, цвета фона, размеров и других параметров.
Параметр VALUE
Описание
Определяет значение кнопки, которое будет отправлено на сервер. На сервер отправляется пара имя/значение, где имя задается параметром name тега BUTTON, а значение — параметром value. Значение может, как совпадать с текстом на кнопке, так быть и самостоятельным. Также параметр value применяется для доступа к данным через скрипты.
Я так понимаю это "некорректный" параметр?
Наверное для того чтобы критика была "рациональной" и "линейной" нужен отдельный справочник по "HTML в IE" и отдельно справочник "HTML"...
Указание на ошибки - это замечательно, потому как позволяет двигаться вперед. Конечно если это "линейно"
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.