2013-12-24 4 views
-2

Ниже приведен код.Передайте переменную от JS до AJAX в PHP

Поток должен быть:

-На нажатие кнопки, значение передается JS

-JS устанавливает в качестве переменной

должен быть отправлен в PHP без обновления страницы -The переменной (AJAX?)

-The переменная должна быть выведена в PHP

Может кто-нибудь показать мне, как это сделать?

<a href="#modal-accept" data-toggle="modal"><button onclick="updateVar(2)" class="btn btn-acceptColor m-t-lg">Accept</button></a> 
<script type="text/javascript"> 
function updateVar(profferRequestID){ 
var profferRequestID; 
//pass to ajax then pass to php?? 
} 
</script>  

<?php 
//echo out that JS variable 
echo $profferRequestID; 
?> 
+0

См. Здесь https: //developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Using_XMLHttpRequest? redirectlocale = en-US & redirectslug = DOM% 2FXMLHttpRequest% 2FUsing_XMLHttpRequest – elclanrs

+0

похоже на школьное задание .. – zzlalani

+0

@zzlalani его нет, можем ли мы оставлять комментарии по актуальному вопросу спасибо , – Alex

ответ

0

попробовать что-то вроде этого

с помощью JQuery

Javascript код

var name = "John"; 
$.get("your_file.php", { user_name: name},function(data) { 
    // on success perform action you want. 
}); 

PHP код

$user_name = $_GET['user_name']; 

ДРУГОЙ ПУТЬ В JavaScript (не проверено)

var name = "John"; 
var xmlhttp; 
if (window.XMLHttpRequest) 
{ 
    // code for IE7+, Firefox, Chrome, Opera, Safari 
    xmlhttp=new XMLHttpRequest(); 
} 
else 
{ 
    // code for IE6, IE5 
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
} 
xmlhttp.onreadystatechange=function() 
    { 
     if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
     // on success perform action you want. 
    } 
    } 
xmlhttp.open("GET","your_file.php?user_name="+name,true); 
xmlhttp.send(); 

EDITED КОД

function updateVar(val){ 
    $.get("path_to/your_file.php", { profferRequestID : val},function(data) { 
     // on success perform action you want. 
    }); 
} 

your_file.php

$profferRequestID = $_GET['profferRequestID']; 
+1

Не забудьте указать, что плакат нуждается в jQuery с вашим кодом. –

+0

Вы можете объяснить эту строку $ .get ("your_file.php", {имя_пользователя: имя}, функцию (данные)? или лучше, ответьте, используя код, который я поставил под вопрос, поскольку я не могу понять, что вы делаете. например, «your_file.php», что это? Мне не нужны другие файлы. – Alex

+0

вы можете проверить здесь http://api.jquery.com/jquery.get/ –

-1

Я не знаком с AJAX, или PHP, но я знаю, что в javascript, вы можете читать/редактировать innerhtml. Я думаю, ваш лучший выбор - создать скрытый элемент и использовать его для хранения ваших переменных.

+0

, что не сработает. если я поместил переменную в JS, как мне получить ее на PHP без обновления? – Alex

0

Oy. Мне нужно еще 6 баллов, прежде чем я могу добавить комментарий.

Пожалуйста, ответьте на следующие вопросы:

  1. ли это должно быть кросс-совместимым браузер?
    • Если да, то можете рассмотреть возможность использования jQuery JavaScript library.. Есть тонна несовместимых браузеров с AJAX, которые реферат jQuery.
    • В любом случае, вы можете использовать jQuery из-за мощных библиотек AJAX.
  2. Вы хотите вернуть php-ответ к своей функции JavaScript или отобразить его где-нибудь на вашей HTML-странице?

После того, как вы ответите на это, я с радостью предоставит вам полный ответ. Я пытаюсь вернуть сообщество StackOverflow. :)

+0

1. Конечно 2. нет, в соответствии с вопросом говорит - отобразить его в PHP – Alex

+0

Я не уверен, что вы подразумеваете под «отображать его на PHP». PHP - это язык программирования на стороне сервера. Если вы не вернете ответ PHP на сценарий AJAX, а затем манипулируете кодом веб-страницы для его отображения, он не будет отображаться нигде, кроме журналов сервера. –

Смежные вопросы