Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从php到javascript文件检索布尔值_Javascript_Php_Jquery - Fatal编程技术网

如何从php到javascript文件检索布尔值

如何从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

可以从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
    }
    
    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
    });