JS提示PHP变量

时间:2014-10-06 04:19:11

标签: javascript php prompt

这可能吗?或者我真的需要首先使用AJAX JS吗?

<?php
echo'< script type="text/javascript">var eadd=prompt("Please enter your email address");< /script>';
$eadd = $_POST['eadd']; ?>

我怎么能用AJAX做到这一点?

3 个答案:

答案 0 :(得分:3)

不可能。你应该使用ajax。以下示例中使用了jQuery

<script>
var eadd=prompt("Please enter your email address");
$.ajax(
{
    type: "POST",
    url: "/sample.php",
    data: eadd,
    success: function(data, textStatus, jqXHR)
    {
        console.log(data);
    }
});
</script>

在php文件中

<?php
echo $_POST['data'];
?>

答案 1 :(得分:2)

Ajax(使用jQuery

<script type="text/javascript">
$(document).ready(function(){

var email_value = prompt('Please enter your email address');
if(email_value !== null){
    //post the field with ajax
    $.ajax({
        url: 'email.php',
        type: 'POST',
        dataType: 'text',
        data: {data : email_value},
        success: function(response){ 
         //do anything with the response
          console.log(response);
        }       
    }); 
}

});
</script>

<强> PHP

echo 'response = '.$_POST['data'];

<强>输出:(控制台)

  

response = email@test.com

答案 2 :(得分:2)

不可能直接。因为PHP首先在服务器端执行,然后javascript在客户端(通常是浏览器)加载

但是有一些选项有或没有ajax。见下一步。

使用ajax 。 有很多变化,但基本上你可以这样做:

//using jquery or zepto
var foo = prompt('something');
$.ajax({
    type: 'GET', //or POST
    url: 'the_php_script.php?foo=' + foo
    success: function(response){
        console.log(response);
    }
});

和php文件

<?php
    echo ($_GET['foo']? $_GET['foo'] : 'none');
?>

Witout ajax: 如果你想将一个值从javascript传递给PHP 而不用 ajax,那么就是一个例子(虽然可能有另一种方法):

//javascript, using jquery or zepto
var foo = prompt('something');
//save the foo value in a input form
$('form#the-form input[name=foo]').val(foo);

html代码:

<!-- send the value from a html form-->
<form id="the-form">
    <input type="text" name="foo" />
    <input type="submit"/>
</form>

和php:

<?php
    //print the foo value
    echo ($_POST['foo'] ? $_POST['foo'] : 'none');
?>