Foros del Web » Programando para Internet » PHP »

Sistema de Votacion Ajax

Estas en el tema de Sistema de Votacion Ajax en el foro de PHP en Foros del Web. Buenas Noches soy yo denuevo :$ Bueno ahora estoy creando un sistema de votaciones para mi proyecto tipo blog por post's con ajax solo que ...
  #1 (permalink)  
Antiguo 26/01/2012, 23:27
Avatar de geeck22  
Fecha de Ingreso: agosto-2010
Ubicación: Tijuana B.C.
Mensajes: 79
Antigüedad: 13 años, 7 meses
Puntos: 7
Pregunta Sistema de Votacion Ajax

Buenas Noches soy yo denuevo :$
Bueno ahora estoy creando un sistema de votaciones para mi proyecto tipo blog por post's con ajax solo que me quede trabado ya que no me graba en en mi bd ningun dato, quisa me puedan ayudar a ver que anda mal

la estructura de mi tabla votos es:
id INT Primary
id_post INT
positivo INT
negativo INT

voto.php
Código HTML:
Ver original
  1. <script language="JavaScript" type="text/javascript" src="ajax.js"></script>
  2. <div id="xxxx">
  3.   <a id="xxxx" onclick="votar(this.id_post, this.voto)" name="positivo" href="javascript:void(0)">Positivo</a> /
  4.   <a id="xxxx" onclick="votar(this.id_post, this.voto)" name="negativo" href="javascript:void(0)">Negativo</a>
  5. </div>

ajax.js
Código Javascript:
Ver original
  1. function votar(id_post, voto) {
  2.   xmlhttp=new XMLHttpRequest();
  3.   xmlhttp.onreadystatechange=function() {
  4.     if (xmlhttp.readyState==4 && xmlhttp.status==200) {
  5.    document.getElementById(id).innerHTML=xmlhttp.responseText;
  6.     }
  7.   }
  8.   xmlhttp.open("GET","votar.php?id_post=" + id_post + "voto" + voto,true);
  9.   xmlhttp.send();
  10. }

Código PHP:
<?php
$conexion 
mysql_connect ('localhost''root''') or die(mysql_error());
$db mysql_select_db('ttm'$conexion) or die(mysql_error());

$id_post "1";
$ppositivo "positivo";
$pnegativo "negativo";

if(
$_GET['positivo'] == $ppositivo){
$sql_positivo "SELECT positivo FROM votos WHERE id_post = '$id_post'";
$consulta_positivo mysql_query($sql_positivo);
$n_positivo mysql_fetch_row($consulta_positivo);
$positivo $n_positivo[0]+1;
$sql_positivo "UPDATE votos SET positivo = '$positivo' WHERE id_post = '$id_post'";
mysql_query($sql_positivo);
}
elseif(
$_GET['negativo'] == negativo){
$sql_negativo "SELECT negativo FROM votos WHERE id_post = '$id_post'";
$consulta_negativo mysql_query($sql_negativo);
$n_negativo mysql_fetch_row($consulta_negativo);
$negativo $n_negativo[0]+1;
$sql_negativo "UPDATE votos SET negativo = '$negativo' WHERE id_post = '$id_post'";
mysql_query($sql_negativo);
}
?>
es bastante sencillo, me di cuenta que guarda los datos en la bd si no le pongo la condicional $_GET['positivo'] == $ppositivo

Agradesco su ayuda
__________________
Si te ayudo mi respuesta, dale clic en "Me gustó, ¡gracias!", nada te cuesta :)
  #2 (permalink)  
Antiguo 26/01/2012, 23:36
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Sistema de Votacion Ajax

Si tu script necesita la variable $_GET['positivo'] ¿por qué no la estás enviando?

En la linea donde mandas los parámetros por Ajax está el problema:
Cita:
xmlhttp.open("GET","votar.php?id_post=" + id_post + "&voto" + voto + "&positivo=positivo",true);
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 26/01/2012, 23:39
Avatar de geeck22  
Fecha de Ingreso: agosto-2010
Ubicación: Tijuana B.C.
Mensajes: 79
Antigüedad: 13 años, 7 meses
Puntos: 7
Respuesta: Sistema de Votacion Ajax

xD sierto, soy nuevo en ajax aun y me confundo en algunas cosas, gracias, provare arreglar eso
__________________
Si te ayudo mi respuesta, dale clic en "Me gustó, ¡gracias!", nada te cuesta :)
  #4 (permalink)  
Antiguo 26/01/2012, 23:48
Avatar de geeck22  
Fecha de Ingreso: agosto-2010
Ubicación: Tijuana B.C.
Mensajes: 79
Antigüedad: 13 años, 7 meses
Puntos: 7
Respuesta: Sistema de Votacion Ajax

humm :/ intente ponerlo asi pero no lo consegui x_x
Cita:
xmlhttp.open("GET","votar.php?id_post=" + id_post + "&voto" + voto,true);
Cita:
xmlhttp.open("GET","votar.php?id_post=" + id_post + "&voto" +positivo,true);
Cita:
xmlhttp.open("GET","votar.php?id_post=" + id_post + "&positivo" + voto,true);
__________________
Si te ayudo mi respuesta, dale clic en "Me gustó, ¡gracias!", nada te cuesta :)
  #5 (permalink)  
Antiguo 26/01/2012, 23:52
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Sistema de Votacion Ajax

1. Las variables GET se reciben así.

?foo=bar&x=y

¿Notas el signo de igual entre clave y valor?

¿Notas el separador de variables & también?

Eso es básico, independientemente de si es Ajax o no.

¿Cual de estas dos reglas estás respetando?

2. Tu script necesita la variable $_GET['positivo'] y que además su valor sea positivo también.

Tu has programado eso, ¿por qué no estás resolviendo tu problema?

Porque simplemente no respetas ninguna de las normas.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 26/01/2012, 23:56
Avatar de geeck22  
Fecha de Ingreso: agosto-2010
Ubicación: Tijuana B.C.
Mensajes: 79
Antigüedad: 13 años, 7 meses
Puntos: 7
Respuesta: Sistema de Votacion Ajax

hahaha xD qe wey!
nunca lo vi, llevo 4 dias pegado a la pc, este es un proyecto para terminar el lunes x_x
debo descanzar
__________________
Si te ayudo mi respuesta, dale clic en "Me gustó, ¡gracias!", nada te cuesta :)

Etiquetas: ajax, html, mysql, sistema, sql, tabla, votacion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:45.