javascript $ .post将参数传递给外部PHP文件

Sha*_*oud -2 javascript php ajax json xmlhttprequest

我有

enter code here

function ajaxFunction(){
var ajaxRequest;  // The variable that makes Ajax possible!

try{
    // Opera 8.0+, Firefox, Safari
    ajaxRequest = new XMLHttpRequest();
} catch (e){
    // Internet Explorer Browsers
    try{
        ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
        try{
            ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e){
            // Something went wrong
            alert("Your browser is too old to run me!");
            return false;
        }
    }
}
// Create a function that will receive data sent from the server
ajaxRequest.onreadystatechange = function(){
    if(ajaxRequest.readyState == 4){
    $.post('userfind.php', function(data) {


    document.getElementById("myTable").style.display = "block"; 
    var x=document.getElementById("myTable");
    for (var i = 0; i < data.length; i++) { 

    var row=x.insertRow(-1);
    var cell1=row.insertCell(-1);
    var cell2=row.insertCell(-1);
    ...
    ...
Run Code Online (Sandbox Code Playgroud)

在PHP中

enter code here

<?php 

session_start();
$username = "XXXXXXXX";
$password = "XXXXXXXX";
$database = "XXXXXXXX";
$link = mysql_connect("localhost", "$username", "$password");
if(!$link) {echo("Failed to establish connection to mysql server");
         exit();}

$status = mysql_select_db($database);


$oId = mysql_real_escape_string($_POST["order_IDsearch"]);


if (isset($order_IDsearch)){
$result = mysql_query ("SELECT * FROM personal_info WHERE  order_id= '".$oId."' ");
$myjsons = array();
while($row = mysql_fetch_assoc($result)){ 
$myjsons[] = $row;
}
echo json_encode($myjsons);
}

?>
Run Code Online (Sandbox Code Playgroud)

如果我删除SQL条件,javascript将显示表,matrk if和标记$ _post

如果我如上所述离开php,它就不会显示表格,

什么错误的PHP页面帮助请


这里是整个javascript ajax函数,

enter code here

function ajaxFunction(){
var ajaxRequest;  // The variable that makes Ajax possible!

try{
    // Opera 8.0+, Firefox, Safari
    ajaxRequest = new XMLHttpRequest();
} catch (e){
    // Internet Explorer Browsers
    try{
        ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
        try{
            ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e){
            // Something went wrong
            alert("Your browser is too old to run me!");
            return false;
        }
    }
}
// Create a function that will receive data sent from the server
ajaxRequest.onreadystatechange = function(){
    if(ajaxRequest.readyState == 4){




    $.post('userfind.php', {orderId:"order_IDsearch"}, function(data) {
    var obj = $("#myTable").show();
    var x = obj.get(0);
    for (var i = 0; i < data.length; i++) { 

    var row=x.insertRow(-1);
    var cell1=row.insertCell(-1);
    ...
    ...



   cell1.innerHTML = "<b><input name='edit' type='button' onClick='editRow(this)' value='Edit' />    <input name='del' type='button' onClick='delRow(this)' value='Del' /></b>";
   cell2.innerHTML =  data[i].user_id;
   cell3.innerHTML =  data[i].first_name ;
   ....
   ....  

 }},'json');}
    }
   ajaxRequest.open("POST", "userfind.php", true);
   ajaxRequest.send(null); 
    }
Run Code Online (Sandbox Code Playgroud)

这让我感到困惑,请帮我修改代码,我应该再次编写代码吗?可以修改此代码吗?

Adi*_*rab 6

你没有传递任何东西到你的PHP文件$.post...

让它变得像

$.post('userfind.php', {order_IDsearch: "your data"}, function(data){
// your implementation
});
Run Code Online (Sandbox Code Playgroud)

这应该工作......

如果您的order_IDsearch是动态的,那么就像这样完成它

$.post('userfind.php', {yourData:order_IDsearch}, function(data){
    // your implementation
    });
Run Code Online (Sandbox Code Playgroud)

在PHP方面,你将不得不访问它

$_POST['yourData'];
Run Code Online (Sandbox Code Playgroud)

发送多个值

$.post('userfind.php', {key1:value1,key2:value2,...}, function(data){
        // your implementation
        });
Run Code Online (Sandbox Code Playgroud)

  • 完成!我只是好奇它有什么区别?我正在学习JSON,我发现即使你在关键部分有或没有那些双引号,它也能正常工作 (2认同)