这可能吗?或者我真的需要首先使用AJAX JS吗?
<?php
echo'< script type="text/javascript">var eadd=prompt("Please enter your email address");< /script>';
$eadd = $_POST['eadd']; ?>
我怎么能用AJAX做到这一点?
答案 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');
?>