Здравствуйте, вопрос может покажется несколько банальным, но за 2 почти бессонные ночи ответ так и не нашел. Опыт работы с ajax не большой, так что прошу не отправлять меня сразу в Google, я там был и не понял.
Собственно вопрос:
На странице есть форма со строкой ввода и кнопкой "отправить". Мы в поле ввода, вводим какое-то значение, например, id страницы пользователя, или имя - не важно. Как я могу передать это значение (введенное в поле) в php переменную на той же страницы. То есть, чтобы в переменная $value = "текст, который мы ввели в поле". И дальше бы она обрабатывалась, при этом пользователь оставался бы на той же странице.
Буду очень благодарен за ответы, так как вопрос становится навязчивым и не дает спать
p.s. Передавать введенный текст в div (например), через jquery - получается, но как его занести в переменную, которая будет обрабатываться на той же странице?
Передача данных из строки в переменную
Re: Передача данных из строки в переменную
как-то так...
Код: Выделить всё
<?phpif($_POST['newvar']) $myvar = $_POST['newvar']; //Определение переменной пришедшей от javascript?><html> ... <form> <input type="text" name="newvar"> <input type="button" value="Отправить" onclick="$.post(document.location.href,{newvar:this.form.newvar.value});"> </form> ...</html>
Re: Передача данных из строки в переменную
Спасибо за ответ, попробовал реализовать этот метод, добавил только одну строку, echo, которая бы выводила переменную, но ничего не происходит, подскажите пожалуйста, что я делаю не так?
Код: Выделить всё
<?phpif($_POST['newvar']) $myvar = $_POST['newvar']; //Определение переменной пришедшей от javascript?><html> ... <form> <input type="text" name="newvar"> <input type="button" value="Отправить" onclick="$.post(document.location.href,{newvar:this.form.newvar.value});"> </form> <?echo $myvar;?> ...</html>
Re: Передача данных из строки в переменную
Потому что вы пытаетесь вывести переменную сразу же вместе со страницей, когда она еще не определена. Вот такой пример нагляднее будет.
Код: Выделить всё
<?phpif($_POST['newvar']) //Если пришли данные от JS{ $myvar = $_POST['newvar']; //то определяем переменную и выводим на экран сообщение echo "Переменная определена : " . $myvar;}else { //Иначе показываем всю страницу?><html> <head> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script> <script type="text/javascript"> function send(vardata) { //Отправляем переменную и суем в #output что нам вернул PHP-скрипт $.post(document.location.href,{newvar:vardata}, function(data){ $("#output").html(data); }); } </script> </head> <body> <div id="output"></div> <form> <input type="text" name="newvar"> <input type="button" value="Отправить" onclick="send(this.form.newvar.value);"> </form> </body></html><?php}?>
Re: Передача данных из строки в переменную
Спасибо большое, это то, что надо, буду разбираться!