如何从php转到js以使用在那里定义的vars?

问题描述

| 以ѭ0开头的行中是否可以使用javascript中先前定义的变量?
var southWestLat = map.getBounds().getSouthWest().lat();
var southWestLng = map.getBounds().getSouthWest().lng();
var northEastLat = map.getBounds().getNorthEast().lat();
var northEastLng = map.getBounds().getNorthEast().lng();

var coordinatesMap =
<?php
    global $wpdb;
    $sql = \"SELECT user_id,lat,lng FROM coordinates WHERE lat>southWestLat and lat<northEastLat and lng>southWestLng and lng<northEastLng\";
    $rows = $wpdb->get_results($sql,OBJECT_K);
    ...
?>;
    

解决方法

        由于javascript是一种客户端语言,因此无法直接使用它们。但是,您可以使用AJAX将这些JS变量的值传输到服务器。执行您的sql语句,然后将结果返回到某些JSON对象中,例如。 HTH :) 好吧,所以说我们在JS中有以下内容
var myvar1 = \"HELLO WORLD 1\";
var myvar2 = \"HELLO WORLD 2\";
现在我们要通过AJAX将myvar发送到服务器。这是怎么回事。
$.ajax({
   type: \"POST\",url: \"some.php\",data: ({\'action\' : \'action1\',\'myvar1\' : myvar1,\'myvar2\' : myvar2 }),success: function(msg){
     alert( \"Data Saved: \" + msg );
   }
 });
该url必须是将处理ajax请求的某些脚本。该脚本将回显的内容将最终显示在成功回调的msg变量中。 AJAX处理程序 为此,您将需要在每个AJAX请求中发送一个额外的参数。如果您看上面的示例,我添加了action参数。这将使我们能够确定AJAX处理程序应执行的操作。 ajaxhandler.php
switch($_POST[\"action\"]) {
    case \"action1\":
        action1($_POST[\"myvar1\"]);
    break;
    case \"action2\":
        action2($_POST[\"myvar2\"]);
    break;
}

function action1($myvar1){
    do your action logic here
}

function action2($myvar2){
    do your action logic here
}
    ,        PHP在服务器上运行,而JavaScript在客户端的浏览器中运行。 因此,您需要使用AJAX来执行此操作-看一下jQuery的AJAX函数。     ,        不,这是完全不同的事情。 javascript在客户端执行,php代码在服务器端执行。仅当您通过HTTP请求将js值传递给php脚本时,您的目标才有可能     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...