Php 在图像地图中动态加载40000个链接的快速方法(或替代方法)?

Php 在图像地图中动态加载40000个链接的快速方法(或替代方法)?,php,jquery,html,map,area,Php,Jquery,Html,Map,Area,我将带回一个GD图像,它是从数据库中的用户信息生成的,现在在查看该图像的页面上。我有下面的区域图,它是由相同类型的查询生成的,用于创建指向该用户配置文件的链接。但是,数据库中可能有40000个用户。。。不管怎么说,我所拥有的是工作,但正如你所想象的,它需要很长时间才能加载 <map id="pixel" name="pixel"> <? $map_x_1 = 0; $map_y_1 = 0; $map_x_2 = 5; $map_y_2 =

我将带回一个GD图像,它是从数据库中的用户信息生成的,现在在查看该图像的页面上。我有下面的区域图,它是由相同类型的查询生成的,用于创建指向该用户配置文件的链接。但是,数据库中可能有40000个用户。。。不管怎么说,我所拥有的是工作,但正如你所想象的,它需要很长时间才能加载

<map id="pixel" name="pixel">

<?
    $map_x_1 = 0;
    $map_y_1 = 0;

    $map_x_2 = 5;
    $map_y_2 = 5;

    $block_num = 1;

    while ($map_y_2 <= 1000) {

        while ($map_x_2 <= 1000) {

            $actual_x_cood = $map_x_1+1;
            $actual_y_cood = $map_y_1+1;

            $grid_search = mysql_query("SELECT *
                            FROM project
                            WHERE project_x_cood = '$actual_x_cood' AND project_y_cood = '$actual_y_cood'") or die(mysql_error());

            $block_exists = mysql_num_rows($grid_search);

            if ($block_exists == 1) {

                echo("<area shape=\"rect\" coords=\"$map_x_1, $map_y_1, $map_x_2, $map_y_2\" href=\"/block/$block_num/\" alt=\"\" title=\"$block_num\" />\n");

            } else {

                echo("<area shape=\"rect\" coords=\"$map_x_1, $map_y_1, $map_x_2, $map_y_2\" href=\"/block/$block_num/\" alt=\"\" title=\"$block_num\" />\n");

            }

            $map_x_1 = $map_x_1 + 5;
            $map_x_2 = $map_x_2 + 5;

            $block_num = $block_num+1;  

        }

        $map_y_1 = $map_y_1 + 5;
        $map_y_2 = $map_y_2 + 5;

        $map_x_1 = 0;
        $map_x_2 = 5;

    }
?>

</map>


您应该捕获图像地图中的坐标(使用jquery很容易),并将其传递给服务器,然后服务器计算用户单击的坐标

我做了一些类似的事情,用一个速率条显示100个值(1-100%)。但是它是在原型中完成的,所以代码对您帮助不大

小提示:我必须从绝对点击位置减去容器的左侧位置

在php和表单中,它不是那么灵活,但要容易得多。您可以只指定一个输入类型映像。坐标将作为post变量传递

差不多


就足够了

您应该捕获图像地图中的坐标(使用jquery很容易),并将其传递给服务器,然后服务器计算用户单击的坐标

我做了一些类似的事情,用一个速率条显示100个值(1-100%)。但是它是在原型中完成的,所以代码对您帮助不大

小提示:我必须从绝对点击位置减去容器的左侧位置

在php和表单中,它不是那么灵活,但要容易得多。您可以只指定一个输入类型映像。坐标将作为post变量传递

差不多


就足够了

你应该考虑使用。它将x-y coords作为内置功能检索,可以在JavaScript中使用,也可以作为表单提交的一部分使用


在接收X-Y坐标后,可以使用四叉树或其他算法在数据集中进行快速的空间搜索。

你应该考虑使用。它将x-y coords作为内置功能检索,可以在JavaScript中使用,也可以作为表单提交的一部分使用


收到x-y坐标后,您可以使用四叉树或其他算法在数据集中进行快速空间搜索。

40000?这对任何客户来说都太过分了。你有没有考虑过谷歌地图和为它而存在的“标记群集”库?我见过其他应用程序,它们让javascript捕获点击的x/y坐标,然后进行ajax或cgi调用,让后端计算出点击位置的相应响应。4万?这对任何客户来说都太过分了。你有没有考虑过谷歌地图和为它而存在的“标记集群”库?我见过其他应用程序,它们让javascript捕获点击的x/y坐标,然后进行ajax或cgi调用,让后端计算出点击位置的相应响应。