如何从php到javascript文件检索布尔值
可以从php到javascript检索布尔值吗 我只想做的很简单:从php变量如何从php到javascript文件检索布尔值,javascript,php,jquery,Javascript,Php,Jquery,可以从php到javascript检索布尔值吗 我只想做的很简单:从php变量$x中检索布尔值到js中 发送电子邮件时,应为真 当电子邮件未发送时False 然后使用javascript获取该布尔值,打印相应的消息 在我昨天打开的另一个案例中,可以找到我工作的完整代码 PHP: if (!$mail->send()) { $x = false; //when email is not sent } else { $x = true; //when email is sent
$x
中检索布尔值到js中
if (!$mail->send()) {
$x = false; //when email is not sent
} else {
$x = true; //when email is sent
}
JS伪代码
.done(function (data) {
if(php Boolean variable is false) {
("$formText").html("Message sent");
} else (if php Boolean variable is true) {
("$formText").html("Message not sent");
}
});
我假设您已经在(通过AJAX)传递数据了,您只是不知道如何对其进行编码 使用:
json\u encode()
PHP:
Javascript:
.done(function (data) {
if (data.x) {
$("#formText").html("Message sent");
} else {
$("#formText").html("Message not sent");
}
} //end function data
);//end done function
我假设您已经在(通过AJAX)传递数据了,您只是不知道如何对其进行编码 使用:
json\u encode()
PHP:
Javascript:
.done(function (data) {
if (data.x) {
$("#formText").html("Message sent");
} else {
$("#formText").html("Message not sent");
}
} //end function data
);//end done function
从PHP代码返回bool值时,请使用json_encode()。它可以从本机PHP类型转换为本机Javascript类型
从PHP代码返回布尔值时,请使用json_encode()。它可以从本机PHP类型转换为本机Javascript类型
使用响应代码并使用“完成”和“失败”处理它们 PHP
您可以在上找到的状态代码列表,使用响应代码并使用“完成”和“失败”处理它们 PHP
您可以在上找到的状态代码列表称为AJAX,或者在php可执行文件中定义javascript变量,然后从js文件中调用该变量。发布您想法的答案会有所帮助,不要担心,如果它们不起作用,我不会否决投票:)@external你是通过ajax发布你的from吗?@SaadSuri是的,在我的问题中发布的链接中查看完整的代码你要找的是什么叫做
ajax
,或者在php可执行文件中定义你的javascript变量,然后从js文件中调用该变量发布你想法的答案,不要担心,如果它们不起作用,我不会否决投票:)@Eternal你是通过ajax发布你的from吗?@SaadSuri是的,查看我在问题中发布的链接中的完整代码是的,我在使用ajax,查看我在问题中发布的链接中的完整代码,确保设置数据类型:'json'
并/或发送正确的内容类型标题您的其他人缺少打开的{很好,但它只有在发送电子邮件时才起作用。当电子邮件未被发送时不会发生任何事情,因为我从您的代码中切换了true
和false
?$x=true
应该是$x=false
在我的代码中。是的,我正在使用ajax,请查看我在问题中发布的链接中的完整代码确保设置数据类型:“json”
同时发送和/或发送正确的内容类型标题您的其他内容缺少打开的{很好,但它只有在发送电子邮件时才起作用。当电子邮件未被发送时不会发生任何事情,因为我从您的代码中切换了true
和false
?$x=true
应该是$x=false
在我的code.url到api中你是说php文件路径吗?有些东西工作不正常,页面reloads@Eternal,url是您可以附加php脚本的域。因为php是基于服务器的文件的相对路径,只有当它与js文件位于同一个基本文件夹中时才有效。不要紧,我使用../phpfile.php和worksurl到api。您是指php文件路径吗?有些地方工作不正常,页面reloads@Eternal,url为t你可以通过这个域附加你的php脚本。因为php是基于服务器的文件的相对路径,只有当它与js文件位于同一个基本文件夹中时才有效。不要紧,我使用的是../phpfile.php并且有效
<?php
// ...
$success = '{"message": "your mail is send"}';
$error = '{"message": "failed sending mail"}';
$code;
$out;
if(mailSend){
$code = 200;
$out = $success;
} else {
$code = 400;
$out = $error;
}
http_response_code($code);
echo $out;
// ...
var data = 'yourData';
$.ajax({
url: 'yourApiUrl'M,
data: data,
method: 'POST',
xhrFields: {withCredentials: true},
crossDomain: true,
dataType: 'json'
}).done(function() {
// mail was send
}).fail(function() {
// error on sending
});