sql >> Databáze >  >> RDS >> Mysql

Načtěte obsah z MySQL při posouvání pomocí příspěvku AJAX

Tohle je prostě špatně:

$from = htmlspecialchars(stripslashes(mysql_real_escape_string($_POST['from'])));

Pokud from má být celé číslo, stačí použít:

$from = (int) $_POST['from'];

Také vidím, že toto číslo pochází z id v html a id nemohou začínat číslem.

Upravit: Dalším problémem je, že nevybíráte ID v dotazu SQL, pokud from existuje, a i když byste to udělali, tento přístup může v budoucnu vést k problémům, když odstraníte záznamy a vaše ID již nebudou sekvenční.

Pokud jde o první problém, mohu jej vyřešit změnou firebugu:

 if($(window).scrollTop() + $(window).height() == $(document).height()) {

komu:

 if( ($(window).scrollTop() + $(window).height()) > ($(document).height() -  10) ) {

Úprava 2: Chcete-li vyřešit váš problém s nesekvenčním ID, nejjednodušším způsobem by bylo vypočítat from v javascriptu pomocí něčeho jako:

dataStr = "from=" + $(".n").length;    // just count the number of elements you are showing already



  1. Návrhový vzor pro vlastní pole v relační databázi

  2. Základní tabulka migrace Laravel 4 nebyla nalezena

  3. Chytání špatné výjimky

  4. jak najít indexy v tabulce v oracle