Мне нужно получить разрешение экрана пользователя и сохранить его в моей базе данных.
Что я делаю, так это: у меня есть функция Javascript, которая вызывает информацию, и передает значение в скрытое поле формы. Это функция:
<script type="text/javascript"> function getUserData(){ var s_width=screen.width var s_height=screen.height document.getElementById('screen_width').value=s_width document.getElementById('screen_height').value=s_height } </script>
И форма:
<form name="login" id="login" action="memberlogin.php" method="post"> <input type="hidden" id="screen_width" name="screen_width"> <input type="hidden" id="screen_height" name="screen_height"> <table style="margin-top:9px;"> <tr><td width="200px"><input type="text" name="username" style="width:100%"/></td></tr> <tr><td width="200px"><input type="password" name="password" style="width:100%"/></td></tr> <tr><td><input type="submit" name="submit" value="Log In" /></td></tr> </table> </form>
Форма отправляется на ту же страницу. Когда я нажимаю «submit» и пытаюсь повторить значение $ _POST ['screen_width'] и $ _POST ['screen_height'], ничего не происходит. Но когда я повторно отправлю его, значения есть. Может ли кто-нибудь сказать мне, что я делаю неправильно? Если у вас есть альтернативное решение, это будет одинаково оценено.
вы проверили выход firebug? возможно, есть некоторые ошибки? попробуйте alert sth в своей функции, возможно, он не вызывается после загрузки начальной страницы? попробуйте поместить вызов функции в кнопку отправки onClick
или в onSubmit
формы.
Решив его сам, это просто вопрос вызова функции после загрузки элемента.