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