Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.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
Javascript 从另一个外部php脚本运行外部php脚本_Javascript_Php_Ajax_Json - Fatal编程技术网

Javascript 从另一个外部php脚本运行外部php脚本

Javascript 从另一个外部php脚本运行外部php脚本,javascript,php,ajax,json,Javascript,Php,Ajax,Json,我有一个主索引页面,它使用ajax请求处理用户登录数据的外部php文件。在这个外部php文件中,我还包括另一个处理所有函数的外部php文件,但是外部登录文件不能使用任何函数 下面是index.php中的ajax调用 $('#ind_login_submit').on('click', function (e) { var vars = $("#ind_login_form").serialize(); // the script where you handle the form in

我有一个主索引页面,它使用ajax请求处理用户登录数据的外部php文件。在这个外部php文件中,我还包括另一个处理所有函数的外部php文件,但是外部登录文件不能使用任何函数

下面是index.php中的ajax调用

$('#ind_login_submit').on('click', function (e) {

    var vars = $("#ind_login_form").serialize(); // the script where you handle the form input.
    //alert("gu");
    var hr = new XMLHttpRequest();
    hr.open("POST", "scripts/index/ind_login_submit.php", true);
    hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    hr.onreadystatechange = function() {
        if(hr.readyState == 4 && hr.status == 200) {
            var data = JSON.parse(hr.responseText);
            for(var obj in data){
                if(obj == "error"){
                    alert(data[obj]);

                }else if(obj == "success"){
                    alert(data[obj]);
                    window.location.replace("http://localhost/site/dashboard.php");
                }
            }
            //alert(hr.responseText);
            //location.load();
        }
    };
    hr.send(vars);
    //results.innerHTML = "requesting...";
    event.preventDefault();
});
下面是外部ind_login_submit.php

    header("Content-Type: application/json");
 session_start();
   include '../../connect.php';
    include '../functions.php';
    $secret_key = '';
globalSecret($secret_key);
$error_array = array('error' => $secret_key);
            $jsonData = json_encode($error_array);
            echo $jsonData; 
            exit;

if(isset($_POST['ind_login_remember'])){

    $ind_login_remember=1;
}else{

    $ind_login_remember=0;
}



$ind_login_email = $_POST['ind_login_email'];
$ind_login_password = $_POST['ind_login_password'];
下面是functions.php

function globalSecret(){

$secret = "This is the secret";
$secret_key = sha1($secret);
}
当我运行代码时,我只得到一个空白警报显示,它应该显示$secret\u key变量

globalSecret($secret_key);
应该是

$secret_key = globalSecret();
函数globalSecret()应如下所示:

function globalSecret(){
    $secret = "This is the secret";
    $secret_key = sha1($secret);
    return $secret_key;
}

在网络日志中跟踪请求。PHP的响应是什么?暂时忘记警报-这是您的第一个调试调用端口。您没有使用函数中的$secret\u键执行任何操作,您是否忘记了
返回
或者
回音
,比如@Dagon建议您需要返回
$secret\u键
。该函数似乎是一个
void
函数。此外,如果您将一个变量解析为不使用的函数,请在开始使用之前先掌握基本知识。您还使用错误的参数数调用了该函数。它不接受任何参数,但您正在传递
$secret\u key
。他需要从函数中返回一些内容。不会做任何事情,因为
globalSecret
不会返回任何内容如果现在运行正常,我完全忘了返回它,我认为perl会自动返回上一次计算的值,但在php中,您必须显式地执行此操作