如何使用ajax将数据从页面发送到另一个页面

时间:2014-04-03 16:48:52

标签: php ajax database

我放了一个循环来获取我数据库的所有值。然后,在每行的最左侧有一个按钮,用于打开另一个页面以查看特定用户的所有数据库。我的问题是,当你点击我的按钮时,会出现一个功能(功能ouvrirEditFormulaire),我想要做的是获得4个值并将其发送到该页面:acceptation.php。所以在我的函数中,我打开一个新窗口,然后用ajax将我的数据发送到eFormulaire.php,我尝试在我的另一个页面(acceptation.php)中使用innerHTML一个div,但没有任何反应。我能做的最多就是在我的第一页内部(当你点击按钮时)内部HTML一个div ...有没有办法将数据发送到我的acceptation.php ???

我的AJAX:

function ouvrirEditFormulaire(id,date,heure,client) {
    window.open('concessionnaire/acceptation.php','mywin','left=20,top=20,width=650,height=730');
    var xhr = new XMLHttpRequest();
    xhr.open("POST","concessionnaire/eFormulaire.php",true);
    xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
    xhr.onreadystatechange = function() {
        if(xhr.readyState == 4 && xhr.status == 200) {
               document.getElementById('divAnotherPage').innerHTML = xhr.responseText;
        }
    }
    xhr.send("id="+id+"&date="+date+"&heure="+heure+"&client="+client);
}

eFormulaire.php:

<?php
include_once('../connect.php');
$object = new User;
$id = $_POST['id'];
$date = $_POST['date'];
$heure = $_POST['heure'];
$client = $_POST['client'];
?>

1 个答案:

答案 0 :(得分:1)

你不需要AJAX:

function ouvrirEditFormulaire(id,date,heure,client) { 
    var url = 'concessionnaire/acceptation.php';     
    window.open(url + "?id="+id+"&date="+date+"&heure="+heure+"&client="+client, 'mywin','left=20,top=20,width=650,height=730');
}

现在您正在打开一个没有参数的新页面,然后在不同的请求中发布到同一页面

您还必须在acceptation.php上获得$_GET[xxx]

如果你想在当前页面上保持打开acceptation.php并在某种对话框div中显示结果,那么AJAX调用可能很方便。