Проблем с анкета

rado0

Registered
Здравейте взех анкета от един видео урок но се появи една грешка в functions.php файла. Това е грешката Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\Program Files\wamp\www\anketa\functions.php on line 152
Ето и файла.
Код:
<?php
function view_results($id=0, $width, $podrejdane, $vote_poll=0, $to_vote=0, $time_vote=0, $time_votee=0)
{
 if ($vote_poll)
 {
  if ($to_vote)
  {
   if ($time_votee)
   {
    if ($time_votee == 1)
    {
     mysql_query("INSERT INTO `ips` (`id_vapros`,`ip`,`timestamp`) VALUES ('$vote_poll','".$_SERVER['REMOTE_ADDR']."','0')");
    }
    else
    {
     $ip_co = mysql_num_rows(mysql_query("SELECT * FROM `ips` WHERE `ip` = '".$_SERVER['REMOTE_ADDR']."' AND `id_vapros` = '$vote_poll' LIMIT 1"));
     if ($ip_co)
     {
      mysql_query("UPDATE `ips` SET `timestamp` = '".(time() + $time_vote)."' WHERE `ip` = '".$_SERVER['REMOTE_ADDR']."' AND `id_vapros` = '$vote_poll'");
     }
     else
     {
      mysql_query("INSERT INTO `ips` (`id_vapros`,`ip`,`timestamp`) VALUES ('$vote_poll','".$_SERVER['REMOTE_ADDR']."','".(time() + $time_vote)."')");
     }
    }
   }
   mysql_query("UPDATE `vaprosi`SET `br_otgovori` = br_otgovori + 1 WHERE `id` = '$vote_poll'");
   mysql_query("UPDATE `otgovori` SET `broi` = broi + 1 WHERE `id` = '$to_vote' LIMIT 1");
  }
  $id = $vote_poll;
 }
 
 $vapros = mysql_fetch_array(mysql_query("SELECT * FROM `vaprosi` WHERE `id` = '$id' LIMIT 1"));
 $order = ($podrejdane) ? "ORDER BY `broi` DESC" : "ORDER BY `id` ASC";
 $query = mysql_query("SELECT * FROM `otgovori` WHERE `id_vapros` = '$id' $order");
 $return = "<br /><b>".$vapros['vapros']."</b><table border=\"0\">\n";
 while ($otgovori = mysql_fetch_array($query))
 {
  $procent = @round(($otgovori['broi'] * (100/$vapros['br_otgovori'])));
  $width_pic = @($otgovori['broi'] * ($width/$vapros['br_otgovori']));
  $return .= "<tr><td>".$otgovori['otgovor']."<br /><img src=\"vote.bmp\" width=\"".$width_pic."\" height=\"9\" border=\"0\"></td><td>Гласове: ".$otgovori['broi']." (".$procent."%)</td></tr>\n";
 }
 $return .= "</table>\nОбщо гласове: ".$vapros['br_otgovori'];
 return $return;
}

function view_form($id, $result_view)
{
 $vapros = mysql_fetch_array(mysql_query("SELECT `vapros` FROM `vaprosi` WHERE `id` = '$id' LIMIT 1"));
 $query = mysql_query("SELECT `id`,`otgovor` FROM `otgovori` WHERE `id_vapros` = '$id'");
 $_SESSION['poll_id'] = $id;
 $return = "<b>".$vapros['vapros']."</b>
<form action=\"\" method=\"post\">
<table border=\"0\">\n";
 while ($otgovori = mysql_fetch_array($query))
 {
  $return .= "<tr><td><input type=\"radio\" name=\"vote\" value=\"".$otgovori['id']."\"> ".$otgovori['otgovor']."</td></tr>\n";
 }
 $return .= "</table>\n<input type=\"submit\" name=\"vote_poll\" value=\"Гласувай\">\n</form>";
 $return .= ($result_view) ? "<a href=\"?poll_results=$id\">Виж резултатите</a>" : '';
return $return;
}

function poll($pol_id="last", $br_glas=0, $width=100, $podrejdane=0, $result_view=0)
{
    if (isset($_GET['poll_results']) && is_numeric($_GET['poll_results']) && $_GET['poll_results'] > 0 && $result_view)
    {
        $p_ank = mysql_num_rows(mysql_query("SELECT * FROM `vaprosi` WHERE `id` = '".$_GET['poll_results']."' LIMIT 1"));
    }
    else
    {
        $p_ank = 0;
    }
    
    if ($p_ank > 0)
    {
        echo view_results(0, $width, $podrejdane, $_GET['poll_results'], 0);
    }
    else
    {
        $ip = $_SERVER['REMOTE_ADDR'];
        $time = time();
        
        $pol_id = ($pol_id == "rand" || $pol_id == "not_vote" || $pol_id == "last" || (is_numeric($pol_id) && $pol_id > 0)) ? $pol_id : "last";
        $br_glas = ($br_glas === 0 || $br_glas === 1 || ereg('^[1-9]{1}[0-9]*[ ]{1}(sec|min|hour|day|week|month|year)$', $br_glas)) ? $br_glas : 0;
        $width = (is_numeric($width) && $width > 0) ? $width : 100;
        $podrejdane = ($podrejdane == 1 || $podrejdane == 0) ? $podrejdane : 0;
        $result_view = ($result_view == 1 || $result_view == 0) ? $result_view : 0;
        
        if ($br_glas !== 0 && $br_glas !== 1)
        {
            $raz = explode(" ", $br_glas);
            $num = $raz[0]; $data = $raz[1];
            
            if ($data == "sec") { $time_vote = $num; }
            elseif ($data == "min") { $time_vote = $num * 60; }
            elseif ($data == "hour") { $time_vote = $num * 3600; }
            elseif ($data == "day") { $time_vote = $num * 86400; }
            elseif ($data == "week") { $time_vote = $num * 604800; }
            elseif ($data == "month") { $time_vote = $num * 2629743; }
            elseif ($data == "year") { $time_vote = $num * 31556926; }
            $time_votee = 2;
        }
        else
        {
            $time_votee = ($br_glas) ? 1 : 0;
        }
        
        
        if (isset($_POST['vote_poll']) && is_numeric($_POST['vote']) && $_POST['vote'] > 0 && isset($_SESSION['poll_id']))
        {
            $ot_c = mysql_num_rows(mysql_query("SELECT * FROM `otgovori` WHERE `id_vapros` = '".$_SESSION['poll_id']."' AND `id` = '".$_POST['vote']."' LIMIT 1"));
            
            if ($time_votee)
            {
                if ($time_votee == 1)
                {
                    $ip_c = mysql_num_rows(mysql_query("SELECT * FROM `ips` WHERE `ip` = '$ip' AND `id_vapros` = '".$_SESSION['poll_id']."' LIMIT 1"));
                }
                else
                {
                    $ip_c = mysql_num_rows(mysql_query("SELECT * FROM `ips` WHERE `id_vapros` = '".$_SESSION['poll_id']."' AND `ip` = '$ip' AND `timestamp` > $time LIMIT 1"));
                }
            }
            else
            {
                $ip_c = 0;
            }
        }
        
  
        if ($ot_c && !$ip_c)
        {
            echo view_results(0, $width, $podrejdane, $_SESSION['poll_id'], $_POST['vote'], $time_vote, $time_votee);
        }
        else
        {
            if ($pol_id == "rand")
            {
             $query = mysql_query("SELECT `id` FROM `vaprosi` ORDER BY RAND() LIMIT 1");
                $anketata = mysql_fetch_array($query);
                $anketata['kolko'] = mysql_num_rows($query);
            }
            elseif ($pol_id == "last")
            {
             $query = mysql_query("SELECT `id` FROM `vaprosi` ORDER BY `id` DESC LIMIT 1");
                $anketata = mysql_fetch_array($query);
                $anketata['kolko'] = mysql_num_rows($query);
            }
            else
            {
                $anketata = mysql_fetch_array(mysql_query("SELECT `id`,COUNT(*) as 'kolko' FROM `vaprosi` WHERE `id` = '$pol_id' LIMIT 1"));
                if ($anketata['kolko'] == 0)
                {
              $query = mysql_query("SELECT `id` FROM `vaprosi` ORDER BY `id` DESC LIMIT 1");
               $anketata = mysql_fetch_array($query);
                  $anketata['kolko'] = mysql_num_rows($query);
                }
            }
            
            if ($anketata['kolko'] > 0)
            {
                if ($time_votee)
                {
                    if ($time_votee == 1)
                    {
                     $ip_co = mysql_num_rows(mysql_query("SELECT * FROM `ips` WHERE `ip` = '$ip' AND `id_vapros` = '".$anketata['id']."' LIMIT 1"));
                     
                    }
                    else
                    {
                     $ip_co = mysql_num_rows(mysql_query("SELECT * FROM `ips` WHERE `ip` = '$ip' AND `timestamp` > $time AND `id_vapros` = '".$anketata['id']."' LIMIT 1"));
                    }
                    
                    if (!$ip_co)
                    {
                     echo view_form($anketata['id'], $result_view);
                    }
                    else
                    {
                     echo view_results($anketata['id'], $width, $podrejdane, 0, 0, 0, 0);
                    }
                    
                    
                }
                else
                {
                    echo view_form($anketata['id'], $result_view);
                }
            }
            else
            {
                return "<b>Няма създадени анкети!</b>";
            }
        }
    }
}
 
Така?
Код:
	 <?php
function view_results($id=0, $width, $podrejdane, $vote_poll=0, $to_vote=0, $time_vote=0, $time_votee=0)
{
 if ($vote_poll)
 {
  if ($to_vote)
  {
   if ($time_votee)
   {
    if ($time_votee == 1)
    {
     mysql_query("INSERT INTO `ips` (`id_vapros`,`ip`,`timestamp`) VALUES ('$vote_poll','".$_SERVER['REMOTE_ADDR']."','0')");
    }
    else
    {
     $ip_co = mysql_num_rows(mysql_query("SELECT * FROM `ips` WHERE `ip` = '".$_SERVER['REMOTE_ADDR']."' AND `id_vapros` = '$vote_poll' LIMIT 1"));
     if ($ip_co)
     {
      mysql_query("UPDATE `ips` SET `timestamp` = '".(time() + $time_vote)."' WHERE `ip` = '".$_SERVER['REMOTE_ADDR']."' AND `id_vapros` = '$vote_poll'");
     }
     else
     {
      mysql_query("INSERT INTO `ips` (`id_vapros`,`ip`,`timestamp`) VALUES ('$vote_poll','".$_SERVER['REMOTE_ADDR']."','".(time() + $time_vote)."')");
     }
    }
   }
   mysql_query("UPDATE `vaprosi`SET `br_otgovori` = br_otgovori + 1 WHERE `id` = '$vote_poll'");
   mysql_query("UPDATE `otgovori` SET `broi` = broi + 1 WHERE `id` = '$to_vote' LIMIT 1");
  }
  $id = $vote_poll;
 }
 
 $vapros = mysql_fetch_array(mysql_query("SELECT * FROM `vaprosi` WHERE `id` = '$id' LIMIT 1"));
 $order = ($podrejdane) ? "ORDER BY `broi` DESC" : "ORDER BY `id` ASC";
 $query = mysql_query("SELECT * FROM `otgovori` WHERE `id_vapros` = '$id' $order");
 $return = "<br /><b>".$vapros['vapros']."</b><table border=\"0\">\n";
 while ($otgovori = mysql_fetch_array($query))
 {
  $procent = @round(($otgovori['broi'] * (100/$vapros['br_otgovori'])));
  $width_pic = @($otgovori['broi'] * ($width/$vapros['br_otgovori']));
  $return .= "<tr><td>".$otgovori['otgovor']."<br /><img src=\"vote.bmp\" width=\"".$width_pic."\" height=\"9\" border=\"0\"></td><td>Гласове: ".$otgovori['broi']." (".$procent."%)</td></tr>\n";
 }
 $return .= "</table>\nОбщо гласове: ".$vapros['br_otgovori'];
 return $return;
}

function view_form($id, $result_view)
{
 $vapros = mysql_fetch_array(mysql_query("SELECT `vapros` FROM `vaprosi` WHERE `id` = '$id' LIMIT 1"));
 $query = mysql_query("SELECT `id`,`otgovor` FROM `otgovori` WHERE `id_vapros` = '$id'");
 $_SESSION['poll_id'] = $id;
 $return = "<b>".$vapros['vapros']."</b>
<form action=\"\" method=\"post\">
<table border=\"0\">\n";
 while ($otgovori = mysql_fetch_array($query))
 {
  $return .= "<tr><td><input type=\"radio\" name=\"vote\" value=\"".$otgovori['id']."\"> ".$otgovori['otgovor']."</td></tr>\n";
 }
 $return .= "</table>\n<input type=\"submit\" name=\"vote_poll\" value=\"Гласувай\">\n</form>";
 $return .= ($result_view) ? "<a href=\"?poll_results=$id\">Виж резултатите</a>" : '';
return $return;
}

function poll($pol_id="last", $br_glas=0, $width=100, $podrejdane=0, $result_view=0)
{
    if (isset($_GET['poll_results']) && is_numeric($_GET['poll_results']) && $_GET['poll_results'] > 0 && $result_view)
    {
        $p_ank = mysql_num_rows(mysql_query("SELECT * FROM `vaprosi` WHERE `id` = '".$_GET['poll_results']."' LIMIT 1"));
    }
    else
    {
        $p_ank = 0;
    }
   
    if ($p_ank > 0)
    {
        echo view_results(0, $width, $podrejdane, $_GET['poll_results'], 0);
    }
    else
    {
        $ip = $_SERVER['REMOTE_ADDR'];
        $time = time();
       
        $pol_id = ($pol_id == "rand" || $pol_id == "not_vote" || $pol_id == "last" || (is_numeric($pol_id) && $pol_id > 0)) ? $pol_id : "last";
        $br_glas = ($br_glas === 0 || $br_glas === 1 || ereg('^[1-9]{1}[0-9]*[ ]{1}(sec|min|hour|day|week|month|year)$', $br_glas)) ? $br_glas : 0;
        $width = (is_numeric($width) && $width > 0) ? $width : 100;
        $podrejdane = ($podrejdane == 1 || $podrejdane == 0) ? $podrejdane : 0;
        $result_view = ($result_view == 1 || $result_view == 0) ? $result_view : 0;
       
        if ($br_glas !== 0 && $br_glas !== 1)
        {
            $raz = explode(" ", $br_glas);
            $num = $raz[0]; $data = $raz[1];
           
            if ($data == "sec") { $time_vote = $num; }
            elseif ($data == "min") { $time_vote = $num * 60; }
            elseif ($data == "hour") { $time_vote = $num * 3600; }
            elseif ($data == "day") { $time_vote = $num * 86400; }
            elseif ($data == "week") { $time_vote = $num * 604800; }
            elseif ($data == "month") { $time_vote = $num * 2629743; }
            elseif ($data == "year") { $time_vote = $num * 31556926; }
            $time_votee = 2;
        }
        else
        {
            $time_votee = ($br_glas) ? 1 : 0;
        }
       
       
        if (isset($_POST['vote_poll']) && is_numeric($_POST['vote']) && $_POST['vote'] > 0 && isset($_SESSION['poll_id']))
        {
            $ot_c = mysql_num_rows(mysql_query("SELECT * FROM `otgovori` WHERE `id_vapros` = '".$_SESSION['poll_id']."' AND `id` = '".$_POST['vote']."' LIMIT 1"));
           
            if ($time_votee)
            {
                if ($time_votee == 1)
                {
                    $ip_c = mysql_num_rows(mysql_query("SELECT * FROM `ips` WHERE `ip` = '$ip' AND `id_vapros` = '".$_SESSION['poll_id']."' LIMIT 1"));
                }
                else
                {
                    $ip_c = mysql_num_rows(mysql_query("SELECT * FROM `ips` WHERE `id_vapros` = '".$_SESSION['poll_id']."' AND `ip` = '$ip' AND `timestamp` > $time LIMIT 1"));
                }
            }
            else
            {
                $ip_c = 0;
            }
        }
       
 
        if ($ot_c && !$ip_c)
        {
            echo view_results(0, $width, $podrejdane, $_SESSION['poll_id'], $_POST['vote'], $time_vote, $time_votee);
        }
        else
        {
            if ($pol_id == "rand")
            {
             $query = mysql_query("SELECT `id` FROM `vaprosi` ORDER BY RAND() LIMIT 1");
                $anketata = mysql_fetch_array($query);
                $anketata['kolko'] = mysql_num_rows($query);
            }
            elseif ($pol_id == "last")
            {
             $query = mysql_query("SELECT `id` FROM `vaprosi` ORDER BY `id` DESC LIMIT 1");
                $anketata = mysql_fetch_array($query);
                $anketata['kolko'] = mysql_num_rows($query);
            }
            else
            {
                $anketata = mysql_fetch_array(mysql_query("SELECT `id`,COUNT(*) as kolko FROM `vaprosi` WHERE `id` = '$pol_id' LIMIT 1"));
                if ($anketata['kolko'] == 0)
                {
              $query = mysql_query("SELECT `id` FROM `vaprosi` ORDER BY `id` DESC LIMIT 1");
               $anketata = mysql_fetch_array($query);
                  $anketata['kolko'] = mysql_num_rows($query);
                }
            }
           
            if ($anketata['kolko'] > 0)
            {
                if ($time_votee)
                {
                    if ($time_votee == 1)
                    {
                     $ip_co = mysql_num_rows(mysql_query("SELECT * FROM `ips` WHERE `ip` = '$ip' AND `id_vapros` = '".$anketata['id']."' LIMIT 1"));
                     
                    }
                    else
                    {
                     $ip_co = mysql_num_rows(mysql_query("SELECT * FROM `ips` WHERE `ip` = '$ip' AND `timestamp` > $time AND `id_vapros` = '".$anketata['id']."' LIMIT 1"));
                    }
                   
                    if (!$ip_co)
                    {
                     echo view_form($anketata['id'], $result_view);
                    }
                    else
                    {
                     echo view_results($anketata['id'], $width, $podrejdane, 0, 0, 0, 0);
                    }
                   
                   
                }
                else
                {
                    echo view_form($anketata['id'], $result_view);
                }
            }
            else
            {
                return "<b>Няма създадени анкети!</b>";
            }
        }
    }
}
 
нем пак сьщото Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\Program Files\wamp\www\anketa\functions.php on line 152
 

Back
Горе