Esto está mal:
$from = htmlspecialchars(stripslashes(mysql_real_escape_string($_POST['from'])));
Si from
se supone que es un número entero, solo use:
$from = (int) $_POST['from'];
También veo que ese número proviene de una identificación en el html y las identificaciones no pueden comenzar con un número.
Editar: Un problema adicional es que no está seleccionando la ID en su consulta sql si from
existe e incluso si lo hiciera, este enfoque puede generar problemas en el futuro cuando elimine registros y sus identificaciones ya no sean secuenciales.
Sobre el primer problema, puedo resolverlo cambiando firebug:
if($(window).scrollTop() + $(window).height() == $(document).height()) {
a:
if( ($(window).scrollTop() + $(window).height()) > ($(document).height() - 10) ) {
Edición 2: Para resolver su problema de identificación no secuencial, la forma más fácil sería calcular from
en javascript usando algo como:
dataStr = "from=" + $(".n").length; // just count the number of elements you are showing already