Html代码比那简单..TTFB大

时间:2016-07-01 10:44:15

标签: php

我有下一个代码:

<table id="tabel_linie_<?php echo $id_linie ?>

<thead>
    <tr>
        <th>
            <style="text-align:left" <h4>Linia
                <?php echo $nume_linie ?>
                </h4>
        </th>
        <th>Referinta</th>
        <th>Cantitate OK</th>
        <th>Numar Operatori</th>
        <th>Cantitate NOK</th>
        <th>Ora Inceput</th>
        <th>Ora Sfarsit</th>
        <th></th>
    </tr>
</thead>
<tbody style="text-align: left">
    <?php if (!isset($valori_vechi)||($valori_vechi==false)) { ?>
    <tr>
        <td><strong><?php echo $nume_linie ?></strong>
            <input type="hidden" value="<?php echo $id_linie ?>" name="id_linie[]" />
        </td>
        <td>
            <select name="referinta[]" style="height:30px">
                <option value="0">--Selecteaza referinta--</option>
                <?php 
                  foreach ($referinte_linie as $referinta) { 
                    echo "<option value='".$referinta->id_produs."' >"; 
                    echo $referinta->referinta.$referinta->index_produs; 
                    echo "</option>"; 
                  }
                ?>
            </select>
        </td>
        <td>
            <input style="width:60px;border:1px solid green;text-align:center;padding-top:5px;padding-bottom:5px;height:16px" type="text" value="" name="cantitate_ok[]" />
        </td>
        <td>

            <input style="width:60px;border:1px solid #999;text-align:center;padding-top:5px;padding-bottom:5px;height:16px" type=text " value=" "name ="numar_operatori[] "/></td>

此代码从数据库中调用多行,每行后面的每行调用“referinta”,对于所有选定的行都是相同的。

问题是打开页面需要很长时间。我的TTFB超过15秒。

有谁知道如何让这个更快?

2 个答案:

答案 0 :(得分:1)

长TTFB是服务器端问题。改进你的HTML无济于事。

这通常意味着服务器花费的时间太长,无法构建响应。

这可能有很多根本原因:

  • 错误的SQL查询
  • 错误代码

试着找到罪魁祸首,祝你好运:)

提示:这里你的PHP代码看起来很好,我认为你的SQL查询执行时间太长。

另请注意,您的HTML代码错误:

  • 您尚未关闭table元素:<table id="tabel_linie_<?php echo $id_linie ?>
  • 你的身体中有一个样式元素(这是不好的做法)没有结束标记(>):

    <th>
        <style="text-align:left" <h4>Linia
            <?php echo $nume_linie ?>
            </h4>
    </th>
    

答案 1 :(得分:0)

网络前端:

检查HTML是否完全有效。缩短HTML使用CSS类。 如果每个行都有相同的<select>...</select>,并且有很多选项可以动态加载它们:搜索键:AJAX + JavaScript。

后端:

检查SQL。可能需要额外的索引,查询更聪明。

也许桌子的分页。