Проблем с АJAX рейтинг

TiMaTa

Registered
Имам AJAX рейтинг, проблема е там че като натисна на картинката нагоре.. в смисъл да дам положителен вот не ми отчита просто става бяла страницата и това е.. не отчита нищо не записва в БД .. :( ..ето и файловете:

connect.php:
Код:
<?php
define("HOST", "localhost");
define("USER", "root");
define("PASS", "");
define("BD", "ratingsystem");

$db_conn = @mysql_connect(HOST, USER, PASS) or die(mysql_error());
@mysql_select_db(BD, $db_conn) or die(mysql_error());

define("TIMESTAMP_VOTE", 24);
?>

index.php:
Код:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<?php $id = (is_numeric($_GET['id']) && $_GET['id'] > 0) ? $_GET['id'] : 0; ?>
<script type="text/javascript" src="vote.js"></script>
<script language="JavaScript">
function movepic(img_name,img_src) {
document[img_name].src=img_src;
}
</script>
</head>
<?php
require "connect.php";
$row = mysql_fetch_array(mysql_query("SELECT `yes`,`no` FROM `votes` WHERE `id` = '$id'"));
$yess = (empty($row['yes'])) ? 0 : $row['yes'];
$noo = (empty($row['no'])) ? 0 : $row['no'];

$timestamp_vote = (is_numeric(TIMESTAMP_VOTE) && TIMESTAMP_VOTE > 0) ? time() - (TIMESTAMP_VOTE * 3600) : 0;

$query = mysql_query("SELECT `vote` FROM `ips` WHERE `id` = '$id' AND `ip` = '".$_SERVER['REMOTE_ADDR']."' AND `timestamp` > '$timestamp_vote' LIMIT 1");
$vote_ip = mysql_fetch_object($query);
$vote_yes = (($vote_ip -> vote) == 1) ? "vote_up" : "vote_up2";
$vote_no = (($vote_ip -> vote) == -1) ? "vote_down" : "vote_down2";
?>
<body>

<div id="txtHint"><?php if (!mysql_num_rows($query)) { ?><a href="javascript:void(null)" onclick="showHint('1','<?php echo $id?>')" onmouseover="movepic('pic1','vote_up.gif');" 
onmouseout="movepic('pic1','vote_up2.gif');"><?php } ?><img name="pic1" src="<?php echo $vote_yes?>.gif" border="0"><?php if (!mysql_num_rows($query)) { ?></a><?php } ?> <b><?php echo $yess?></b> 
<?php if (!mysql_num_rows($query)) { ?><a href="javascript:void(null)" onclick="showHint('-1','<?php echo $id?>')" onmouseover="movepic('pic2','vote_down.gif');" 
onmouseout="movepic('pic2','vote_down2.gif');"><?php } ?><img name="pic2" src="<?php echo $vote_no?>.gif" border="0"><?php if (!mysql_num_rows($query)) { ?></a><?php } ?> <b><?php echo $noo?></b></div>

</body>
</html>

vote.js:
Код:
var xmlHttp

function showHint(str, id)
{
    xmlHttp=GetXmlHttpObject()
    if (xmlHttp==null)
    {
        alert ("Browser does not support HTTP Request")
        return
    }
    var url="vote.php"
    url=url+"?q="+str
    url=url+"&id="+id+"&sid="+Math.random()
    xmlHttp.onreadystatechange=stateChanged
    xmlHttp.open("GET",url,true)
    xmlHttp.send(null)
}

function stateChanged()
{
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
    {
        document.getElementById("txtHint").innerHTML=xmlHttp.responseText
    }
}

function GetXmlHttpObject()
{
    var objXMLHttp=null
    if (window.XMLHttpRequest)
    {
        objXMLHttp=new XMLHttpRequest()
    }
    else if (window.ActiveXObject)
    {
        objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
    }
    return objXMLHttp
}

vote.php:
Код:
<?php
require "connect.php";
if (($_GET['q'] == -1 || $_GET['q'] == 1) && is_numeric($_GET['id']) && $_GET['id'] > 0)
{
	$glasove = mysql_fetch_object(mysql_query("SELECT `yes`,`no` FROM `votes` WHERE `id` = '".$_GET['id']."' LIMIT 1"));
	$timestamp_vote = (is_numeric(TIMESTAMP_VOTE) && TIMESTAMP_VOTE > 0) ? time() - (TIMESTAMP_VOTE * 3600) : 0;
	$query = mysql_query("SELECT * FROM `ips` WHERE `id` = '".$_GET['id']."' AND `ip` = '".$_SERVER['REMOTE_ADDR']."' AND `timestamp` > '$timestamp_vote' LIMIT 1");
	if (!mysql_num_rows($query))
	{
		$yes = ($_GET['q'] == 1) ? 1 : 0;
		$no = ($_GET['q'] == -1) ? 1 : 0;
		$vote_yes = ($_GET['q'] == 1) ? "vote_up" : "vote_up2";
		$vote_no = ($_GET['q'] == -1) ? "vote_down" : "vote_down2";
		$sql = "INSERT INTO `votes` (`id`,`yes`,`no`) VALUES ('".$_GET['id']."','$yes','$no')";
		if (!mysql_query($sql))
		{
			mysql_query("UPDATE `votes` SET `yes` = yes + $yes,`no` = no + $no WHERE `id` = '".$_GET['id']."'");
		}
		
		$count_ip = mysql_fetch_object(mysql_query("SELECT COUNT(*) as 'kolko' FROM `ips` WHERE `id` = '".$_GET['id']."' AND `ip` = '".$_SERVER['REMOTE_ADDR']."' LIMIT 1"));
		if (!$count_ip -> kolko)
		{
			mysql_query("INSERT INTO `ips` (`id`,`ip`,`vote`,`timestamp`) VALUES ('".$_GET['id']."','".$_SERVER['REMOTE_ADDR']."','".$_GET['q']."','".time()."')");
		}
		else
		{
			mysql_query("UPDATE `ips` SET `vote` = '".$_GET['q']."',`timestamp` = '".time()."' WHERE `id` = '".$_GET['id']."' AND `ip` = '".$_SERVER['REMOTE_ADDR']."' LIMIT 1");
		}
		echo "<img src=\"".$vote_yes.".gif\" border=\"0\"> <b>".(($glasove -> yes) + $yes)."</b> <img src=\"".$vote_no.".gif\" border=\"0\"> <b>".(($glasove -> no) + $no)."</b>";
	}
	else
	{
		echo "<img src=\"".$vote_yes.".gif\" border=\"0\"> <b>".(($glasove -> yes) + $yes)."</b> <img src=\"".$vote_no.".gif\" border=\"0\"> <b>".(($glasove -> no) + $no)."</b>";
	}
}
?>

:|
 
ами как ще стане като ти сигурно влизаш директно ...

http://saita.com/faila.php

това е грешно .

я влез в :

http://saita.com/faila.php?id=2

и се пробвай да гласуваш да видиш :roll:
 

Горе