Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.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
如何在wordpress中使用ajax使用php和Json显示数据库列_Php_Jquery_Json_Ajax_Wordpress - Fatal编程技术网

如何在wordpress中使用ajax使用php和Json显示数据库列

如何在wordpress中使用ajax使用php和Json显示数据库列,php,jquery,json,ajax,wordpress,Php,Jquery,Json,Ajax,Wordpress,我是新使用ajax的,我有一个代码可以从wordpress显示数据库列中的一些信息。 我使用以下PHP代码连接数据库并创建JSON文件: <?php $username = $_REQUEST['username']; $password = $_REQUEST['password']; if (isset($username) && isset($password)) { //CONEXION $host="localhost"; $u

我是新使用ajax的,我有一个代码可以从wordpress显示数据库列中的一些信息。 我使用以下PHP代码连接数据库并创建JSON文件:

<?php    
$username = $_REQUEST['username']; 
$password = $_REQUEST['password'];    

if (isset($username) && isset($password)) {
//CONEXION
    $host="localhost";
    $user="DB_Username";
    $pass="DB_Password";
    $dbname="DB_Name";

//Conexion
$conexion = mysqli_connect($host, $user, $pass,$dbname) 
or die("unexpected error");

//gWe made the search
$sql = "SELECT * FROM Column WHERE A_Login='$username'";
mysqli_set_charset($conexion, "utf8"); 

if(!$result = mysqli_query($conexion, $sql)) die();

$clients = array();

$num_result = mysqli_num_rows($result);

    if ($num_result == 0) {
        $clients = array("error" => "true", "msg" => "We can't found this user", "data" => $username);
    } else {
        while($row = mysqli_fetch_array($result)) 
        { 
            $id=$row['ID'];
            $Name=$row['Name'];

            if ($row['A_Login'] == $username && $row['A_Password'] == $password){        
                $clients[] = array('id'=> $id, 'Name'=> $Name);
                } else {
                    $clients[] = array('error'=> "true", "msg" => "Incorrect data");
                    }

        }
    }

$close = mysqli_close($conexion) 
or die("Unespected error with DB");
  }
else {
    $clients = array("error" => "true", "msg" => "You must fill all fields", "username" => $username);
}   
//We build the JSON
$json_string = json_encode($clients);
echo $json_string;

?>

在wordpress页面中,我有以下代码,我构建了一个表单,如果用户单击submit按钮,则调用doLogin()

函数doLogin(){ data={username:jQuery(“#user”).val(),password:jQuery(“#pass”).val()} 控制台日志(数据); jQuery.ajax({ 类型:“POST”, url:“Mywebsiteurl.php”, 数据:数据, beforeSend:function(){ }, 成功:功能(数据){ 控制台日志(数据); //var arr=JSON.parse(数据); //$('#forma').html(数据); }, 错误:函数(XMLHttpRequest、textStatus、errorshown){ 警报(“错误”); console.log(textStatus); console.log(错误抛出); } }); } 我需要在
中显示一种使用GN html的列表,例如:

Id:值Id 名称:值名称

还有更多信息

当我尝试使用
$('#forma').html(数据)在我的网站上打印所需信息时我获得错误或只是一个空白


我怎样才能修好它?谢谢。

WordPress有特定的方法来启用ajax请求

// registering ajax request for Logged users
add_action( 'wp_ajax_my_action', 'my_action_callback' );

// registering ajax request also for public area
add_action( 'wp_ajax_nopriv_my_action', 'my_action_callback' );

function my_action_callback() 
{
    // Your code here

    wp_die(); // this is required to terminate immediately and return a proper response
}
称之为:

jQuery(document).ready(function($) {
    var data = {action: "my_action", username: jQuery("#user").val(), password: jQuery("#pass").val()}

    jQuery.ajax({
        url: '/wp-admin/admin-ajax.php',
        data: data,
        method: 'POST',
        success: function(response) {
            console.log(response);
        },
        error: function(a,b,c) {

        }
    });
});

来源:

WordPress有特定的方法来启用ajax请求

// registering ajax request for Logged users
add_action( 'wp_ajax_my_action', 'my_action_callback' );

// registering ajax request also for public area
add_action( 'wp_ajax_nopriv_my_action', 'my_action_callback' );

function my_action_callback() 
{
    // Your code here

    wp_die(); // this is required to terminate immediately and return a proper response
}
称之为:

jQuery(document).ready(function($) {
    var data = {action: "my_action", username: jQuery("#user").val(), password: jQuery("#pass").val()}

    jQuery.ajax({
        url: '/wp-admin/admin-ajax.php',
        data: data,
        method: 'POST',
        success: function(response) {
            console.log(response);
        },
        error: function(a,b,c) {

        }
    });
});

来源:

在WordPress中,我们需要将ajax钩子挂接到您的check\u user函数

add_action('wp_ajax_your_action_from_js', 'your_function');

//Using ajax for non-logged users as well (PUBLIC)
add_action('wp_ajax_nopriv_your_action_from_js', 'your_function');
检查下面的代码,了解它是如何根据您的上下文完成的

在functions.php中

function check_user() {
    $username = $_REQUEST['username']; 
    $password = $_REQUEST['password'];    

    if (isset($username) && isset($password)) {
    //CONEXION
        $host="localhost";
        $user="DB_Username";
        $pass="DB_Password";
        $dbname="DB_Name";

    //Conexion
    $conexion = mysqli_connect($host, $user, $pass,$dbname) 
    or die("unexpected error");

    //gWe made the search
    $sql = "SELECT * FROM Column WHERE A_Login='$username'";
    mysqli_set_charset($conexion, "utf8"); 

    if(!$result = mysqli_query($conexion, $sql)) die();

    $clients = array();

    $num_result = mysqli_num_rows($result);

        if ($num_result == 0) {
            $clients = array("error" => "true", "msg" => "We can't found this user", "data" => $username);
        } else {
            while($row = mysqli_fetch_array($result)) 
            { 
                $id=$row['ID'];
                $Name=$row['Name'];

                if ($row['A_Login'] == $username && $row['A_Password'] == $password){        
                    $clients[] = array('id'=> $id, 'Name'=> $Name);
                    } else {
                        $clients[] = array('error'=> "true", "msg" => "Incorrect data");
                        }

            }
        }

    $close = mysqli_close($conexion) 
    or die("Unespected error with DB");
      }
    else {
        $clients = array("error" => "true", "msg" => "You must fill all fields", "username" => $username);
    }   
    //We build the JSON
    $json_string = json_encode($clients);
    echo $json_string;
}

add_action('wp_ajax_check_user', 'check_user');

//Using ajax for non-logged users as well (PUBLIC)
add_action('wp_ajax_nopriv_check_user', 'check_user');
在JS文件中

在脚本中,动作与您的\u来自\u js的\u动作相关。因此,需要采取行动来了解ajax的作用。在本例中,它执行我们的检查\u user,并返回适当的值

<script type="text/javascript"> 
function doLogin(){
    data = {action: 'check_user', username: jQuery("#user").val(), password: jQuery("#pass").val()}
    console.log(data);
    jQuery.ajax({
        type: "POST",
        url: ajax_url,
        data: data,
        beforeSend: function(){

    },
    success: function(data){
        console.log(data);
        //var arr = JSON.parse(data);
        //$('#forma').html(data);

    },
    error: function(XMLHttpRequest, textStatus, errorThrown) {
        alert("Error");
        console.log(textStatus);
        console.log(errorThrown);
    }
});
} 
</script>

函数doLogin(){
data={action:'check#user',用户名:jQuery(#user”).val(),密码:jQuery(#pass”).val()}
控制台日志(数据);
jQuery.ajax({
类型:“POST”,
url:ajax\uURL,
数据:数据,
beforeSend:function(){
},
成功:功能(数据){
控制台日志(数据);
//var arr=JSON.parse(数据);
//$('#forma').html(数据);
},
错误:函数(XMLHttpRequest、textStatus、errorshown){
警报(“错误”);
console.log(textStatus);
console.log(错误抛出);
}
});
} 
参考简单AJAX表单:


抄本参考:

在WordPress中,我们需要将ajax钩子挂接到您的check\u user函数

add_action('wp_ajax_your_action_from_js', 'your_function');

//Using ajax for non-logged users as well (PUBLIC)
add_action('wp_ajax_nopriv_your_action_from_js', 'your_function');
检查下面的代码,了解它是如何根据您的上下文完成的

在functions.php中

function check_user() {
    $username = $_REQUEST['username']; 
    $password = $_REQUEST['password'];    

    if (isset($username) && isset($password)) {
    //CONEXION
        $host="localhost";
        $user="DB_Username";
        $pass="DB_Password";
        $dbname="DB_Name";

    //Conexion
    $conexion = mysqli_connect($host, $user, $pass,$dbname) 
    or die("unexpected error");

    //gWe made the search
    $sql = "SELECT * FROM Column WHERE A_Login='$username'";
    mysqli_set_charset($conexion, "utf8"); 

    if(!$result = mysqli_query($conexion, $sql)) die();

    $clients = array();

    $num_result = mysqli_num_rows($result);

        if ($num_result == 0) {
            $clients = array("error" => "true", "msg" => "We can't found this user", "data" => $username);
        } else {
            while($row = mysqli_fetch_array($result)) 
            { 
                $id=$row['ID'];
                $Name=$row['Name'];

                if ($row['A_Login'] == $username && $row['A_Password'] == $password){        
                    $clients[] = array('id'=> $id, 'Name'=> $Name);
                    } else {
                        $clients[] = array('error'=> "true", "msg" => "Incorrect data");
                        }

            }
        }

    $close = mysqli_close($conexion) 
    or die("Unespected error with DB");
      }
    else {
        $clients = array("error" => "true", "msg" => "You must fill all fields", "username" => $username);
    }   
    //We build the JSON
    $json_string = json_encode($clients);
    echo $json_string;
}

add_action('wp_ajax_check_user', 'check_user');

//Using ajax for non-logged users as well (PUBLIC)
add_action('wp_ajax_nopriv_check_user', 'check_user');
在JS文件中

在脚本中,动作与您的\u来自\u js的\u动作相关。因此,需要采取行动来了解ajax的作用。在本例中,它执行我们的检查\u user,并返回适当的值

<script type="text/javascript"> 
function doLogin(){
    data = {action: 'check_user', username: jQuery("#user").val(), password: jQuery("#pass").val()}
    console.log(data);
    jQuery.ajax({
        type: "POST",
        url: ajax_url,
        data: data,
        beforeSend: function(){

    },
    success: function(data){
        console.log(data);
        //var arr = JSON.parse(data);
        //$('#forma').html(data);

    },
    error: function(XMLHttpRequest, textStatus, errorThrown) {
        alert("Error");
        console.log(textStatus);
        console.log(errorThrown);
    }
});
} 
</script>

函数doLogin(){
data={action:'check#user',用户名:jQuery(#user”).val(),密码:jQuery(#pass”).val()}
控制台日志(数据);
jQuery.ajax({
类型:“POST”,
url:ajax\uURL,
数据:数据,
beforeSend:function(){
},
成功:功能(数据){
控制台日志(数据);
//var arr=JSON.parse(数据);
//$('#forma').html(数据);
},
错误:函数(XMLHttpRequest、textStatus、errorshown){
警报(“错误”);
console.log(textStatus);
console.log(错误抛出);
}
});
} 
参考简单AJAX表单:


法典参考:

信息是来自其他数据库还是WordPress数据库?信息是来自其他数据库还是WordPress数据库??