0

我有两个文件,一个在 PHP 中运行一次计算并将它们存储到 javascript 中的变量中。第二个文件包含要发送到数据库的 mySQL 查询。如何从第一个文件以及第二个文件发送 javascript 变量并将它们存储为变量。

-我正在使用 .load() 函数加载第二个 .php 文件。因此它不会刷新并重定向到第二个 .php 文件。

这可能与没有ajax有关吗?如果只能使用 ajax,你如何设置它(ajax 的新手)?

$("#st").click(function()
{
var s = $("#st").val();
var a = $("#AA").val();
var t = ((s*1)*(a*1)+(a*1)*(1/3)).toFixed(2);
var c = (t*95).toFixed(2);
var text = $('#st').children("option:selected").text();
document.getElementById('Tim').innerHTML ='<p>'+ t +' </p>';
document.getElementById('Obj').innerHTML ='<p>'+ text +'</p>';
document.getElementById('Tot').innerHTML ='<p>$'+ c +'</p>';
});

var Customer = <?php echo json_encode($q);?>;
var Dr= <?php echo json_encode($o);?>;
var Pd = <?php echo json_encode($p);?>;
var Qp = <?php echo json_encode($a);?>;
var Qs = <?php echo json_encode($r);?>;
var Cam = <?php 
        if($Camera==1){
            $CameraOutput = "XL";
            echo "XL";
            }

        if($Camera==2){
            $CameraOutput = "SL";
            echo "SL";
            }
    ?>;
4

2 回答 2

3

AJAX 是异步 JavaScript 和 XML 的首字母缩写词。如果你想运行你的第二个 php 文件而不重定向到它,你可以使用 AJAX,因为它会在“后台”运行你的第二个 php 文件。带有 JQuery 的 AJAX 也非常易于使用。

取自http://api.jquery.com/jQuery.ajax/

示例:将一些数据保存到服务器并在完成后通知用户:

$.ajax({
  type: "POST",
  url: "some.php",
  data: { name: "John", location: "Boston" }
}).done(function( msg ) {
  alert( "Data Saved: " + msg );
});
于 2013-07-17T17:36:21.493 回答
2

编辑:您在对另一个答案的评论中提到您正在使用 jQuery,所以我编辑了以下内容。

这可能与没有ajax有关吗?

是的,但你可能不想这样做。您可以通过创建一个表单元素、设置其action、设置其method、向其添加字段并对其进行设置来完成此操作submit

var form;
form = $("<form>")
    .attr("action", "/path/to/php/file.php")
    .attr("method", "POST");
$("<input type=hidden>")
    .attr("name", "fieldName1") // I'm assuming hardcoded field names
    .val(fieldValue1)           // And values coming from variables
    .appendTo(form);
$("<input type=hidden>")
    .attr("name", "fieldName2")
    .val(fieldValue2)
    .appendTo(form);
form[0].submit(); // Note the [0], so we're using `submit` on the actual HTMLFormElement

请注意,响应将替换当前窗口。

如果只能使用 ajax,你如何设置它(ajax 的新手)?

那里有成千上万的例子。:-) 这是另一个:

$.ajax({
    url:  "/path/to/php/file.php",
    type: "POST",
    data: {"fieldName1": fieldValue1, "fieldName2": fieldValue2},
    success: function() {
        // Called if the request succeeds
    },
    error: function() {
        // Called if the request succeeds
    }
});
于 2013-07-17T17:31:13.527 回答