Foros del Web » Programando para Internet » PHP »

Problema con PHP

Estas en el tema de Problema con PHP en el foro de PHP en Foros del Web. Estoy haciendo un coso para valorar la web con estrellitas y tengo un problema el codigo es asi: este es el codigo que envia los ...
  #1 (permalink)  
Antiguo 22/02/2011, 00:27
 
Fecha de Ingreso: febrero-2011
Mensajes: 11
Antigüedad: 13 años, 2 meses
Puntos: 0
Problema con PHP

Estoy haciendo un coso para valorar la web con estrellitas y tengo un problema el codigo es asi:

este es el codigo que envia los datos a la base de datos:

<?php
function estadisticas($valor){
if($valor==1){
$sql="UPDATE estadisticas SET votos=votos+1 WHERE id=1";
$result=mysql_query($sql);
}else if($valor==2){
$sql="UPDATE estadisticas SET votos=votos+1 WHERE id=2";
$result=mysql_query($sql);
}else if($valor==3){
$sql="UPDATE estadisticas SET votos=votos+1 WHERE id=3";
$result=mysql_query($sql);
}else if($valor==4){
$sql="UPDATE estadisticas SET votos=votos+1 WHERE id=4";
$result=mysql_query($sql);
}else if($valor==5){
$sql="UPDATE estadisticas SET votos=votos+1 WHERE id=5";
$result=mysql_query($sql);
}}
?>

y este es el de las estrellitas :


<a href="prueba.php" ><img src="estrellavacia.png" name="est1" width="25" height="25" id="est1" onclick=" <?php estadisticas(1)?>" onmouseover="valor1()" onmouseout="valor11()" /></a>
<a href="prueba.php" ><img src="estrellavacia.png" name="est2" width="25" height="25" id="est2" onclick=" <?php estadisticas(2)?>" onmouseover="valor2()" onmouseout="valor22()"/></a>
<a href="prueba.php" ><img src="estrellavacia.png" name="est3" width="25" height="25" id="est3" onclick=" <?php estadisticas(3)?>" onmouseover="valor3()" onmouseout="valor33()"/></a>
<a href="prueba.php" > <img src="estrellavacia.png" name="est4" width="25" height="25" id="est4" onclick=" <?php estadisticas(4)?>" onmouseover="valor4()" onmouseout="valor44()"/></a>
<a href="prueba.php"><img src="estrellavacia.png" name="est5" width="25" height="25" id="est5" onclick=" <?php estadisticas(5)?>" onmouseover="valor5()" onmouseout="valor55()"/></a><br />


bueno resulta que cuando cargo la pagina ya me aumenta en la base de datos en la tabla votos me aumenta 1 a cada uno de los valores sin que yo aprete nada.
Intente de varias formas pero no consegui nada :/
Les agradeceria su ayuda.
  #2 (permalink)  
Antiguo 22/02/2011, 07:47
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 18 años, 11 meses
Puntos: 394
Respuesta: Problema con PHP

Bueno, primero que todo yo utilisaria un SWITCH para la variable $valor me parece mas organizado pero es cuestion de gustos.

Lo otro es que el te suma 1 cada vez que actualices porque no tiene nada que controle el llamado a la funcion estadisticas... osea que cada vez que el usuario actualice la funcion es llamada y actualiza todos en uno porque eso es lo que tienes en los UPDATE +1

lo que debes hacer es utilizar java para hacer el sistema de votacion... hay muchos en internet...

Aqui te dejo el link de uno muy bueno.
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #3 (permalink)  
Antiguo 22/02/2011, 08:29
Avatar de Ribon  
Fecha de Ingreso: septiembre-2010
Ubicación: El firmamento
Mensajes: 487
Antigüedad: 13 años, 7 meses
Puntos: 91
Respuesta: Problema con PHP

Lo que pasa es que estadisticas es una funcion de PHP y lo que haces al poner

Código PHP:
Ver original
  1. <?php estadisticas(x) ?>

en el evneto onclick es llamarla para cada uno de los valores, lo que debes hacer es llamar a una funcion javascript que llame a un archivo php que actualice el valor de la estadistica. puedes hacerlo con ajax.

aprovecho de comentar que si lo haces de la manera en que te digo te cotará mucho por tu nivel xD

por otra parte puedes hacerlo con un enlace, que llame a que estrella le subiras 1, por ejemplo

Código HTML:
Ver original
  1. <a href="actualizar.php?valor=1"><img src="estrellavacia.png" name="est1" width="25" height="25" id="est1" /></a>

y en el archivo actualizar actualizar segun el valor del $_GET['valor'] y no se rediriges a la pagina anterior

hay muchas formas, te recomiendo la de Ajax

saludos
  #4 (permalink)  
Antiguo 23/02/2011, 16:18
 
Fecha de Ingreso: febrero-2011
Mensajes: 11
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Problema con PHP

Muchas gracias, voy a ver que me sale :/ aun no se AJAX recien empiezo con php.

Etiquetas: Ninguno
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 22:15.