使用选择查询进行分页-PHP

时间:2019-04-15 15:55:38

标签: php mysql

我有这段代码,基本上在同一if循环内,执行两次选择,以实现两个botton,使用户能够在连续记录和上一个记录之间导航,到目前为止没有任何内容奇怪的是,如果不是在实际的导航中,用户会在导航中发现问题,因为通常遵循的顺序不是线性的,承认要滚动的记录有4条:

a,b,c,d

现在此行为的代码

a,b,a,c,a,d,c

这并不好,这两个查询完全相同,它们仅与上一个和随后的选项有所不同,以允许我之前写的内容,我尝试更改相等的参数,但结果仍然如此,可以我知道吗?

if($_GET['te']==""){
        $sel_tipo_acc = 0;
    }else{
        $sel_tipo_acc = $_GET['te'];
    }

    if($_GET['fe'] != "S"){

    $mystr_record_precedente = "-1";
    if (isset($id_str)) {
      $mystr_record_precedente = $id_str;
    }
    $myte_record_precedente = "-1";
    if (isset($sel_tipo_acc)) {
      $myte_record_precedente = $sel_tipo_acc;
    }
    //42320819($database_riskmanagement, $riskmanagement);
    $query_record_precedente = sprintf("SELECT * FROM tev_Evidenze AS ev LEFT JOIN tev_Fatt_crit AS fc ON fc.ID_fatt_crit = ev.id_fatt_crit WHERE ev.id_struttura=%s AND ev.id_tipo_accreditamento=%s AND ev.ID_evidenza < ".$_GET['id']." ORDER BY fc.ordine_fatt_crit, ev.cod_evidenza, ev.ordine_evidenza DESC LIMIT 1 ", GetSQLValueString($mystr_record_precedente, "int"),GetSQLValueString($myte_record_precedente, "int"));
    $record_precedente = mysqli_query($riskmanagement, $query_record_precedente) or die(mysqli_error($riskmanagement));
        createLog($_COOKIE['cod_operatore'], $query_record_precedente);

    $row_record_precedente = mysqli_fetch_assoc($record_precedente);
    $totalRows_record_precedente = mysqli_num_rows($record_precedente);

    echo "<div class=\"col-md-6\" align=\"right\">";
    if($totalRows_record_precedente >0){
        echo "<a href=\"edit_evidenza.php?id=".$row_record_precedente['ID_evidenza']."&te=".$_GET['te']."\"  class=\"btn btn-info btn-sm\">< requisito precedente</a>"; 
    }

mysqli_free_result($record_precedente);

$mystr_record_successivo = "-1";
if (isset($id_str)) {
  $mystr_record_successivo = $id_str;
}
$myte_record_successivo = "-1";
if (isset($sel_tipo_acc)) {
  $myte_record_successivo = $sel_tipo_acc;
}
//42320819($database_riskmanagement, $riskmanagement);
$query_record_successivo = sprintf("SELECT * FROM tev_Evidenze AS ev LEFT JOIN tev_Fatt_crit AS fc ON fc.ID_fatt_crit = ev.id_fatt_crit WHERE ev.id_struttura=%s AND ev.id_tipo_accreditamento=%s AND ev.ID_evidenza > ".$_GET['id']." ORDER BY fc.ordine_fatt_crit, ev.cod_evidenza, ev.ordine_evidenza ASC LIMIT 1 ", GetSQLValueString($mystr_record_successivo, "int"),GetSQLValueString($myte_record_successivo, "int"));
$record_successivo = mysqli_query($riskmanagement, $query_record_successivo) or die(mysqli_error($riskmanagement));
        createLog($_COOKIE['cod_operatore'], $query_record_successivo);

$row_record_successivo = mysqli_fetch_assoc($record_successivo);
$totalRows_record_successivo = mysqli_num_rows($record_successivo);

    if($totalRows_record_successivo >0){
        echo "&nbsp;";
        echo "<a href=\"edit_evidenza.php?id=".$row_record_successivo['ID_evidenza']."&te=".$_GET['te']."\" class=\"btn btn-info btn-sm\">requisito successivo ></a>";
    }
    echo "</div>";
mysqli_free_result($record_successivo);

}
?>

我的目的是允许用户在记录之间顺畅地导航。

考虑到此导航发生在记录或更好的记录之内。

包含所有记录的表>在单个记录中

在这里,我应该允许浏览

0 个答案:

没有答案