【问题标题】:MYsql query load with AJAX使用 AJAX 加载 MYsql 查询
【发布时间】:2013-10-01 18:57:19
【问题描述】:

我的网站需要长时间响应加载,它是在 Cake PHP 上创建的。

在我的站点中有 7 个 MySql 查询,当我加载页面时,7 个查询会运行,因此需要 5 秒到 18 秒,然后将 HTML 格式的响应发送到浏览器,然后在 0.5 秒内显示整页。我的意思是突然整页显示。 ,

我的页面有五个部分,如页眉、菜单栏、内容、侧边栏和页脚,

是否有可能每个部分都一个一个地加载,它看起来像,当新访问者来时,页面响应是这样的,首先显示头部,然后是菜单,然后是上下文,然后是侧边栏,最后是页脚显示。

我的域速度非常快,我的管理面板在 1 秒内打开,但是页面需要很长时间,所以我想这样做,我的管理面板速度很快,但页面需要很长时间才能发送第一个字节。

这里是简单的代码,

<body>
<div class="container">

<?php include("head.php"); ?>

<?php include("menu.php"); ?>

<?php include("content.php"); ?>

<?php include("side_bar.php"); ?>

<?php include("footer.php"); ?>
</div>
</body>

我该怎么做,第一个 head.php 页面及其 Mysql 查询运行和服务器响应显示在浏览器中

然后第二部分 menu.php 页面及其 Mysql 查询运行和服务器响应显示在浏览器中,

我在&lt;body&gt; 中包含的所有其他页面一一运行并在浏览器上显示结果

所以有了这个 decnique 访问者少等,

我如何在这里使用 AJAX 或其他技术?

请指导我,这种技术可能会减少页面加载时间和首字节响应。

谢谢

【问题讨论】:

  • 通常查询慢是因为你没有在表上设置索引。
  • 第一:更好地优化您的数据库或表提取。第二:使用 ajax,您可以进行 5 次调用,使用 var 跟踪调用返回的内容并相应地填充。但是您需要同步呼叫吗?以定义的方式一个接一个?然后更好地优化查询。
  • @jeff 现在我对索引表了解甚少,这里是查询“CREATE INDEX index_name ON table_name (column_name)”这足以在 Mysql 中执行还是我做更多的事情来在表上创建索引?如果此查询还不够,请提供我了解表上更好索引的任何链接
  • 这里是页面查询索引。在表名(列名)上创建索引索引名。如何找到最适合索引的 column_name?
  • @Kailash19 我对同步进行了长期研究,但在谷歌结果中关于两个表之间同步,或远程和本地服务器之间同步,但是我只有一个本地主机和 25 个表,所以我如何在这里申请同步?

标签: php html mysql ajax


【解决方案1】:

如果我正确理解您的查询,您能否根据前一个包含的结果将包含放在 if 语句中?

例如,如果您的 head.php 运行一个名为 $head_result 的 mysql 查询,您可以:

if (count($head_result) > 0)
{
    include("menu.php");
}

或类似的东西

【讨论】:

  • 我想说的是,当head.php页面加载到浏览器上时,menu.php请求再次转到服务器并在浏览器上加载菜单,所有包含页面在浏览器上一一加载。上一次加载然后第二次加载
猜你喜欢
  • 1970-01-01
  • 2018-03-23
  • 1970-01-01
  • 1970-01-01
  • 2019-08-07
  • 1970-01-01
  • 2021-05-17
  • 2019-07-23
  • 2014-06-28
相关资源
最近更新 更多