Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (5) [1] 2 3 ... Последняя » ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Передача значений из JS в php, Передача значений из JS в php
hammer_tm  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Пользователь
Сообщений: 62
Пользователь №: 35622
На форуме: 4 года, 4 месяца, 19 дней
Карма:




Добрый день, в Java Script'е не понимаю, но вот возникла ситуация когда нужно передать значение из Java Script в php.

Есть скрипт от vk.com

<script>
VK.Api.call('users.get', {user_ids: 1}, function(r) {
if(r.response) {
alert('Привет, ' + r.response[0].first_name);
}
}
);
</
script>


и ниже код php

<?php
echo "Привет ".$user_name;
?>


Т.е. при выполнении кода появляется всплывающее окно с надписью Привет, Павел
Как вместо этого всплывающего окна передать значение Павел в php в переменную $user_name ?
Если задаю банальные вопросы, сильно меня не ругайте.

Это сообщение отредактировал hammer_tm - 8.02.2016 - 09:24
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
AllesKlar  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 3478
Пользователь №: 38635
На форуме: 3 года, 3 месяца, 1 день
Карма: 184




jQuery.get()

jQuery.post()

сделать скрытый <img> в src подсунуть ему адрес скрипта с параметром

var req = new XMLHttpRequest();
req.open("GET", "example/data.txt", false);
req.send(null);


--------------------
[продано копирайтерам]
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
hammer_tm  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Пользователь
Сообщений: 62
Пользователь №: 35622
На форуме: 4 года, 4 месяца, 19 дней
Карма:




На моем примере показать можете?
А без jQuery никак не обойтись?

Это сообщение отредактировал hammer_tm - 8.02.2016 - 09:39
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
AllesKlar  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 3478
Пользователь №: 38635
На форуме: 3 года, 3 месяца, 1 день
Карма: 184




Цитата (hammer_tm @ 8.02.2016 - 07:39)
А на моем примере показать можете?

Нет, не могу, к сожалению, я еще больше ленив, чем ты.
Подожди пару часов, придут студенты, сделают тебе за пару сотен рублей.


--------------------
[продано копирайтерам]
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
VeRTak  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Местная прописка
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 748
Пользователь №: 41530
На форуме: 1 год, 8 месяцев, 28 дней
Карма: 9




Цитата (hammer_tm @ 8.02.2016 - 09:39)
На моем примере показать можете?
А без jQuery никак не обойтись?


user posted image


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26269
Пользователь №: 21350
На форуме: 7 лет, 14 дней
Карма: 729

Не курю:
1 год, 6 месяцев


На моем примере показать можете?

тоже лень, если тока за 300р.

А без jQuery никак не обойтись?
можно

    function ajaxcl (data) {
var xmlhttp;
if ( window.XMLHttpRequest ) {
xmlhttp = new XMLHttpRequest();
} else {
xmlhttp = new ActiveXObject ( "Microsoft.XMLHTTP" );
}
xmlhttp.onreadystatechange = function () {
if ( xmlhttp.readyState == 4 ) {
//тут ответ сервера
var result = xmlhttp.responseText;
}
}

//куда ушёл запрос
xmlhttp.open ( "GET", "/getdata.php?param="+data+"&rand="+Math.random(), true );
xmlhttp.send ();
}


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
hammer_tm  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Пользователь
Сообщений: 62
Пользователь №: 35622
На форуме: 4 года, 4 месяца, 19 дней
Карма:




Нашел решение.
Но не до конца его понимаю.
Может кто-нибудь объяснить логику и порядок выполнения скрипта?
Как может JS и PHP выполняться одновременно? Или я чего то не понимаю?
Но код работает. echo $user_name; выводит: Павел

<script>
VK.Api.call('users.get', {user_ids: 1}, function(r) {
if(r.response) {

document.getElementById('first_name').innerHTML=r.response[0].first_name;
}
}
);

</
script>


<?php
$user_name = "<div id='first_name'></div>";
echo $user_name;
?>
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователь сейчас на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15242
Пользователь №: 4190
На форуме: 9 лет, 1 месяц, 22 дня
Карма: 461




Цитата (hammer_tm @ 8.02.2016 - 11:11)
Нашел решение.
Но не до конца его понимаю.

ПХП формирует HTML. Этим кодом ты создаешь HTML с нужными параметрами.

Проблема в том, что ты ставишь один вопрос (как из JS передать данные в ПХП), но показываешь найденное решение о передаче данных из ПХП в JS. Получается, что ты изначально неправильно поставил вопрос. Определись, что именно тебе надо. Опиши подробнее.



--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
hammer_tm  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Пользователь
Сообщений: 62
Пользователь №: 35622
На форуме: 4 года, 4 месяца, 19 дней
Карма:




Цитата (sergeiss @ 8.02.2016 - 10:30)

Определись, что именно тебе надо. Опиши подробнее.

Самое главное надо было сделать что бы вместо всплывающего окна с надписью "Привет, Павел"
alert('Привет, ' + r.response[0].first_name);

выводилась надпись с помощью переменной $user_name

Что я и сделал с помощью

document.getElementById('first_name').innerHTML=r.response[0].first_name;

и

$user_name = "<div id='first_name'></div>";
echo $user_name;


Я не понимаю порядок выполнения скрипта.
1.) Запрос на сервер vk.com r.response[0].first_name
2.) Полученный ответ заносится в <div id='first_name'></div>
3.) Переменной $user_name присваивается значение <div id='first_name'></div>
4.) Вывод результата

Или как?
И участвует ли в этом браузер пользователя или выполнение происходит на стороне сервера?

Кстати, в самом начале php файла нашел ob_start();
Может ли это как-то влиять на выполнение моего скрипта?
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26269
Пользователь №: 21350
На форуме: 7 лет, 14 дней
Карма: 729

Не курю:
1 год, 6 месяцев


1. JS получает ответ от удалённого сервера
2. в этот момент ты подготавливаешь элемент в DOM страницы
3. ты вставляешь ответ сервера в элемент

ob_start() - это буферизация, просто для отложенного вывода, например

у тебя логично всё.

php быстро нарисует DIV, тем более - пока поступить ответ от удалённого сервера.

браузер участвует там где у тебя JS


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26269
Пользователь №: 21350
На форуме: 7 лет, 14 дней
Карма: 729

Не курю:
1 год, 6 месяцев


просто чё тебя чистый JS не устроил

<script>
VK.Api.call('users.get', {user_ids: 1}, function(r) {
if(r.response) {
var newDiv = document.createElement("div");
newDiv.innerHTML = 'Привет, ' + r.response[0].first_name;
var body = document.getElementsByTagName('body');
body.appendChild(newDiv);
}
}
);
</
script>

вместо appendChild есть ещё и http://www.w3schools.com/jsref/met_node_insertbefore.asp


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
hammer_tm  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Пользователь
Сообщений: 62
Пользователь №: 35622
На форуме: 4 года, 4 месяца, 19 дней
Карма:




Цитата (Игорь_Vasinsky @ 8.02.2016 - 11:02)

php быстро нарисует DIV, тем более - пока поступить ответ от удалённого сервера.

А может быть такое что ответ от удаленного сервера потупит до того как php нарисует div ?

Для этого нужна буферизация с помощью ob_start() ?

Насколько безопасен такой вариант скрипта для подмены данных со стороны браузера (пользователя) если я записываю значение $user_name в базу MySQL ?
Т.к. у меня скрипт не проверяет откуда именно поступили данные (с какого сервера)
Сорри, если задаю тупые вопросы :-)
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
hammer_tm  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Пользователь
Сообщений: 62
Пользователь №: 35622
На форуме: 4 года, 4 месяца, 19 дней
Карма:




Цитата (Игорь_Vasinsky @ 8.02.2016 - 11:07)

просто чё тебя чистый JS не устроил

<script>
VK.Api.call('users.get', {user_ids: 1}, function(r) {
  if(r.response) {
    var newDiv = document.createElement("div");
          newDiv.innerHTML = 'Привет, ' + r.response[0].first_name;
    var body = document.getElementsByTagName('body');
          body.appendChild(newDiv);
  }
}
);
</
script>

вместо appendChild есть ещё и http://www.w3schools.com/jsref/met_node_insertbefore.asp


Не устроил, т.к. нет возможности работать с полученными значениями на php, например записать полученный ответ в MySQL или задать условие с помощью

<?php
if($user_name == "Павел"){
echo "Это Павел";
}else{
echo "Это не Павел";
}
?>


и т.д.

Это сообщение отредактировал hammer_tm - 8.02.2016 - 12:20
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Лысый и злой
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26269
Пользователь №: 21350
На форуме: 7 лет, 14 дней
Карма: 729

Не курю:
1 год, 6 месяцев


в БД можно записать всё посредством ajax
тебе писали http://phpforum.su/index.php?act=Print&cli...limin=1&limit=1
и мой пост тоже


--------------------
Халявные ответы кончились.
Если нужен готовый код - готовьтесь заплатить.
Райкин тоже был артист

Возле дома был сарай
А когда всё хорошо
Можно просто покурить

user posted image
http://ufa102.xyz/
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
hammer_tm  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пользователь
**

Профиль
Группа: Пользователь
Сообщений: 62
Пользователь №: 35622
На форуме: 4 года, 4 месяца, 19 дней
Карма:




Цитата (Игорь_Vasinsky @ 8.02.2016 - 11:20)
в БД можно записать всё посредством ajax
тебе писали http://phpforum.su/index.php?act=Print&cli...limin=1&limit=1
и мой пост тоже

Но не задавать условия типа:

<?php
if($user_name == "Павел"){
// выполнить какой-то код
}else{
// Выполнить другой код
}
?>
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (5) [1] 2 3 ... Последняя » Ответ в темуСоздание новой темыСоздание опроса