2016-10-21 2 views
0

HTML/JS가 포함 된 PHP 파일이 있는데이 파일에는 AJAX를 사용하여 일부 쿼리를 실행 한 다음 다시 테이블로 결과를 반향하는 다른 PHP 파일을 호출합니다 원래의 PHP 파일에. 내가하고 싶은 것은 결과 테이블을 페이지 매기기입니다.PHP에서 생성 된 표의 페이지 매김

검색 나는이 사이트 https://datatables.net/examples/basic_init/alt_pagination.html을 가리키는 받아 들인 asnwer를 복제하려고 시도했지만 더 이상 결과가 없다는 (심지어 오류 메시지도 아니며, 나는 기본적으로 어떤 것이 든 부족하다는 것을 암시한다). 여기

은 AJAX에 의해 호출되는 PHP 파일 내 코드입니다 :
echo '<div class="table-responsive">'; 
echo '<table id="resultsTable" class="table table-hover table-condensed" align="center" style="width:80%">'; 
echo '<thead>'; 
echo '<tr>'; 
echo '<th>Πληροφορίες</th>'; 
echo '<th>Εξώφυλλο</th>'; 
echo "<td><a href='search.php?Order=1&SearchOption=".$SearchOption."&search_db=".$SearchValue."'><button type='button' class='btn btn-primary'>Τίτλος</button></a></td>"; 
echo "<td><a href='search.php?Order=2&SearchOption=".$SearchOption."&search_db=".$SearchValue."'><button type='button' class='btn btn-primary'>Συγγραφέας</button></a></td>"; 
echo "<td><a href='search.php?Order=3&SearchOption=".$SearchOption."&search_db=".$SearchValue."'><button type='button' class='btn btn-primary'>Εκδότης</button></a></td>"; 
echo "<td><a href='search.php?Order=4&SearchOption=".$SearchOption."&search_db=".$SearchValue."'><button type='button' class='btn btn-primary'>Είδος</button></a></td>"; 
echo "<td><a href='search.php?Order=5&SearchOption=".$SearchOption."&search_db=".$SearchValue."'><button type='button' class='btn btn-primary'>Θέμα</button></a></td>"; 
echo "<td><a href='search.php?Order=6&SearchOption=".$SearchOption."&search_db=".$SearchValue."'><button type='button' class='btn btn-primary'>ISBN</button></a></td>"; 
echo '<th>Θέση</th>'; 
echo "<td><a href='search.php?Order=7&SearchOption=".$SearchOption."&search_db=".$SearchValue."'><button type='button' class='btn btn-primary'>Τωρινός Κάτοχος</button></a></td>"; 
echo "<td><a href='search.php?Order=8&SearchOption=".$SearchOption."&search_db=".$SearchValue."'><button type='button' class='btn btn-primary'>Προστέθηκε</button></a></td>"; 
if($LoggedIn == 1) 
{ 
echo "<th>Αλλαγή Καταχώρησης</th>"; 
} 
echo '</tr>'; 
echo '</thead>'; 
//body 
echo '<tbody>'; 
for($i=0;$i<$counter;$i++) 
{ 
echo ' <tr>'; 
    echo "<td href='#' onclick=\"alert('".$ResultTable[$i][10]."');\" style='text-align: center;'><img src='IconImage.png' width='25' height='25' title='".$ResultTable[$i][10]."'/></td>"; 
    echo "<td><img src='BookCovers/". $ResultTable[$i][0] ."' class='img-thubnail' alt='Δεν υπάρχει' width='50' height='50'/></td>"; 
    echo "<td>".$ResultTable[$i][1]."</td>"; 
    echo "<td>".$ResultTable[$i][2]."</td>"; 
    echo "<td>".$ResultTable[$i][3]."</td>"; 
    echo "<td>".$ResultTable[$i][4]."</td>"; 
    echo "<td>".$ResultTable[$i][5]."</td>"; 
    echo "<td>".$ResultTable[$i][6]."</td>"; 
    echo "<td>".$ResultTable[$i][7]."</td>"; 
    echo "<td>".$ResultTable[$i][8]."</td>"; 
    echo "<td>".$ResultTable[$i][9]."</td>"; 
    if($LoggedIn == 1) 
    { 
    echo "<td style='text-align: center;'><a href='UpdateEntry.php?BookID=".$ResultTable[$i][11]."' onclick=\"window.open(this.href, 'mywin','left=20,top=20,width=500,height=500,toolbar=1,resizable=0'); return false;\"><button type='button' class='btn btn-info'><span class='glyphicon glyphicon-wrench'></span></button></a> 
    <a href='DeleteBook.php?BookID=".$ResultTable[$i][11]."' onclick= \"return confirm('Διαγραφή Καταχώρησης; Αυτή η ενέργεια δεν μπορεί να αναιρεθεί!!')\"><button type='button' class='btn btn-danger'><span class='glyphicon glyphicon-remove'></span></button></a></td>"; 
    } 
echo '</tr>'; 
}echo '</tbody>';echo '</table>';echo "</div>"; 

그리고 원래의 PHP 파일에 내가

<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 

<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 

<script src ="jquery-1.12.3.js"></script> 

<script src ="https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js"></script> 

을 차단하고 단지 닫기 전에 머리에 다음을 포함

내가 가지고있는 신체

<script>$(document).ready(function() { 
$('#resultsTable').DataTable({ 
    "pagingType": "full_numbers" 
});});</script> 

내가 열 때 결과는 올바르게 표시되지만 탭 파일 형식이 전혀 없습니다. 어떤 도움이라도 대단히 감사하겠습니다.

+0

Next_step_towards_pro_PHP_tip : echo $ line. $ 라인. $ 라인. $ line ... 이것으로 내 머리가 조금 아프다. "전혀 포맷되지 않았습니다"는 의미는 무엇입니까? 텍스트가 중앙에 있지 않습니까? "미리보기 이미지"대신 "thubnail"을 썼는지 확인 했습니까? –

+0

@Kevin_Kinsey 당신이 옳은 "thubnail"을 알리지 않습니다. 내가 "전혀 포맷하지 않았다"는 의미는 결과 테이블에 올바른 페이지 매김이 없다는 것입니다. –

+0

OMG! http://stackoverflow.com/a/39444025/3558278 – Deep

답변

0

좋아, 대답을 찾았습니다. 코드의 문제는 실제로 2입니다.

  • 2 가지 버전의 jquery가 포함되어 있습니다.
  • 테이블을 생성하는 AJAX 호출은 ... 잘 .. 비동기 였으므로 테이블이 아직 생성되지 않은 동안 실행 흐름이 jquery 파트에 도달했습니다. 이것은 콘솔에서 오류 메시지를 본 적이없는 이유입니다.

head 태그의 jquery 코드를 AJAX 호출의 끝으로 이동하여 올바르게 작동했습니다.

관련 문제