2017-06-15 1 views
0

Je ne suis pas un programmeur expert. Alors veuillez s'il vous plaît aidez-moi quelqu'un. Merci d'avance. J'essaie de charger la valeur de la base de données à partir d'une table. Mais quand j'exécute les données du programme défilement infini avec la duplication des données encore et encore. Je dois arrêter le défilement lorsque les données de la table atteignent la fin. Pas besoin de dupliquer les données. `Comment arrêter le défilement infini lorsque la valeur de la base de données atteint la fin?

<?php 
include('connect.php'); 
$page = (int) (!isset($_GET['p'])) ? 1 : $_GET['p']; 
# sql query 
$sql = "SELECT * FROM job_posting"; 
# find out query stat point 
$start = ($page * $limit) - $limit; 
# query for page navigation 
if(mysql_num_rows(mysql_query($sql)) > ($page * $limit)){ 
    $next = ++$page; 
    $hy=mysql_num_rows(mysql_query($sql)); 
    $limit=$hy; 
} 
$query = mysql_query($sql . " LIMIT {$start}, {$limit}"); 
if (mysql_num_rows($query) < 1) { 
    header('HTTP/1.0 404 Not Found'); 
    echo 'Page not found!'; 
    exit(); 
} 
?> 
<!doctype html> 
<html lang="en"> 
<head> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 
<script type="text/javascript" src="js/jquery-ias.min.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function() { 
    // Infinite Ajax Scroll configuration 
    jQuery.ias({ 
     container : '.wrap', // main container where data goes to append 
     item: '.item', // single items 
     pagination: '.nav', // page navigation 
     next: '.nav a', // next page selector 
     loader: '<img src="css/ajaxloader.gif"/>', // loading gif 
     triggerPageThreshold: 3 // show load more if scroll more than this 
    }); 
    }); 
</script> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <title>jQuery Load While Scroll</title> 
</head> 
<body> 
<div class="wrap"> 
    <h1><a href="#">Data load while scroll</a></h1> 

    <!-- loop row data --> 
    <?php while ($row = mysql_fetch_array($query)): ?> 
    <div class="item" id="item-<?php echo $row['j_id']?>"> 
    <h2> 
     <span class="num"><?php echo $row['id']?></span> 
     <span class="name"><?php echo $row['title'].' '.$row['jobtype']?></span> 
    </h2> 
    <p><?php echo $row['comp_name']?></p> 
    </div> 
    <?php endwhile?> 

    <!--page navigation--> 
    <?php if (isset($next)): ?> 
    <div class="nav"> 
    <a href='again.php?p=<?php echo $next?>'>Next</a> 
    </div> 
    <?php endif?> 
</div><!--.wrap--> 
</body> 
</html> 
+0

Pourquoi la balise java? –

+0

Désolé..Son erreur – Anna

Répondre

0

vous définissez la limite au nombre d'enregistrements dans la table.

$hy=mysql_num_rows(mysql_query($sql)); 
    $limit=$hy; 

commentaire ci-dessus et le code définir la limite de $ à un nombre quelconque de début comme

$limit = 100; 
+0

Désolé ... Cela ne fonctionne pas – Anna

+0

Partagez le code mis à jour. avez-vous déclaré la variable $ limit avant $ start variable? –

+0

# recherche le point de requête $ limite = 100; $ start = ($ page * $ limite) - $ limite; – Anna