El problema con este codigo es que cuando muestro la foto y la voto, me vota la segunda y asi sucesivamente, es decir, voto la primera foto y carga la base de datos con los datos de la segunda, voto la segunda foto y carga la base de datos con los datos de la tercera...
El codigo es bastante sensillo, hay cosas que se obvian como paginacion y demás, pero no logro encontrar que parte es la que me entorpece el codigo, mi idea es que vote la primera foto y se cargue la base de datos con la primera foto...
mostrar-personas.php
Código PHP:
Ver original
<?php include('conexion.php'); $RegistrosAMostrar=1; //estos valores los recibo por GET de "trebol", trebol rankea a la persona de 1 a 3 $trebol = $_GET['trebol']; } //paginador $RegistrosAEmpezar=($_GET['pag']-1)*$RegistrosAMostrar; $PagAct=$_GET['pag']; //caso contrario los iniciamos }else{ $RegistrosAEmpezar=0; $PagAct=1; } //******--------determinar las páginas---------******// $PagAnt=$PagAct-1; $PagSig=$PagAct+1; $PagUlt=$NroRegistros/$RegistrosAMostrar; //verificamos residuo para ver si llevará decimales $Res=$NroRegistros%$RegistrosAMostrar; // si hay residuo usamos funcion floor para que me // devuelva la parte entera, SIN REDONDEAR, y le sumamos // una unidad para obtener la ultima pagina //query para buscar la foto y datos del fid de la foto $Resultado=mysql_query("SELECT fotos.pertenecea_foto as pertenecea_foto, usuarios.fid_usuario as fid_usuario, usuarios.nombre_usuario as nombre_usuario, fotos.link_foto as link_foto FROM fotos, usuarios WHERE usuarios.fid_usuario = fotos.pertenecea_foto AND usuarios.check_usuario = 1 ORDER BY fotos.id_foto DESC LIMIT $RegistrosAEmpezar, $RegistrosAMostrar",$db) or die(mysql_error()); //si no hay mas paginas no mostrar nada if($PagAct==$PagUlt){ echo "No hay mas para mostrar";}else{ //aca se busca el texto "Sobre mi" de la foto $Resultado_sobremi = mysql_query('SELECT texto_sobremi FROM sobremi WHERE quien_sobremi = "'.$MostrarFila["fid_usuario"].'" ORDER BY id_sobremi DESC LIMIT 1',$db); //aca se realiza la votacion de la persona echo "trebol listo"; //esta es una referencia para ver si funciona $q_interaccion = mysql_query('INSERT interaccion SET de_interaccion ="'.$_SESSION['fid_username'].'", a_interaccion = "'.$MostrarFila['pertenecea_foto'].'", valor_interaccion = "'.$trebol.'"',$db); } //aca se muestra la foto que viene de la query con los datos de la misma echo '<a href="perfil.php?usuario='.$MostrarFila["fid_usuario"].'"><img src="uploads/'.$MostrarFila["link_foto"].'" /></a> //checkear si el usuario fue votado anteriormente $q_checkvotado = mysql_query('SELECT * FROM interaccion WHERE de_interaccion = "'.$_SESSION['fid_username'].'" AND a_interaccion = "'.$MostrarFila['pertenecea_foto'].'"',$db) or die(mysql_error()); echo $MostrarFila['pertenecea_foto']."<br>"; echo $_SESSION['fid_username']."<br>"; echo $checkvotado."<br>"; echo $PagAct." pagina activa"; } //desplazamiento echo "<center><table width='270px' border='0'> <tr> <td>"; if($PagAct<$PagUlt) echo "<a onclick=\"Pagina('$PagSig', '1')\"><img src='images/si.png' /></a> <a onclick=\"Pagina('$PagSig', '2')\"><img src='images/capas.png' /></a> <a onclick=\"Pagina('$PagSig', '3')\"><img src='images/nah.png' /></a></td> </tr> </table></center></center><br><br>"; } ?>
Esto es la parte de AJAX:
ajaxpagsingle.js
Código Javascript:
Ver original
function objetoAjax(){ var xmlhttp=false; try{ xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); }catch(e){ try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); }catch(E){ xmlhttp = false; } } if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp = new XMLHttpRequest(); } return xmlhttp; } function Pagina(nropagina, trebol){ //donde se mostrará los registros divContenido = document.getElementById('foto-persona'); ajax=objetoAjax(); //uso del medoto GET //indicamos el archivo que realizará el proceso de paginar //junto con un valor que representa el nro de pagina ajax.open("GET", "mostrar-personas.php?pag="+nropagina+"&trebol="+trebol); divContenido.innerHTML= '<img src="anim.gif">'; ajax.onreadystatechange=function() { if (ajax.readyState==4) { //mostrar resultados en esta capa divContenido.innerHTML = ajax.responseText } } //como hacemos uso del metodo GET //colocamos null ya que enviamos //el valor por la url ?pag=nropagina ajax.send(null) }
Y donde lo muestro es una simple div en personas.php