
Z góry dziękuję.
<?php /* Page: _drawrating.php Created: Aug 2006 Last Mod: Mar 18 2007 The function that draws the rating bar. --------------------------------------------------------- ryan masuga, masugadesign.com ryan@masugadesign.com Licensed under a Creative Commons Attribution 3.0 License. <a href="http://creativecommons.org/licenses/by/3.0/" target="_blank">http://creativecommons.org/licenses/by/3.0/</a> See readme.txt for full credit details. --------------------------------------------------------- */ function rating_bar($id,$units='',$static='') { require('_config-rating.php'); // get the db connection info //set some variables $ip = $_SERVER['REMOTE_ADDR']; if (!$units) {$units = 10;} if (!$static) {$static = FALSE;} // get votes, values, ips for the current rating bar $query=mysql_query("SELECT total_votes, total_value, used_ips FROM $rating_dbname.$rating_tableName WHERE id='$id' ")or die(" Error: ".mysql_error()); // insert the id in the DB if it doesn't exist already // see: <a href="http://www.masugadesign.com/the-lab/scripts/unobtrusive-ajax-star-rating-bar/#comment-121" target="_blank">http://www.masugadesign.com/the-lab/script...ar/#comment-121</a> $sql = "INSERT INTO $rating_dbname.$rating_tableName (`id`,`total_votes`, `total_value`, `used_ips`) VALUES ('$id', '0', '0', '')"; } if ($numbers['total_votes'] < 1) { $count = 0; } else { $count=$numbers['total_votes']; //how many votes total } $current_rating=$numbers['total_value']; //total number of rating added together and stored if($count == 1){ $tense = "głos"; //plural form votes/vote }elseif($count == 2 OR 3 OR 4){ $tense = "głosy"; //plural form }elseif($count >=5){ $tense = "głosów"; //plural form }elseif($count == 0){ $tense = "głosów"; //plural form } // determine whether the user has voted, so we know how to draw the ul/li $voted=mysql_num_rows(mysql_query("SELECT used_ips FROM $rating_dbname.$rating_tableName WHERE used_ips LIKE '%".$ip."%' AND id='".$id."' ")); // now draw the rating bar if ($static == 'static') { $static_rater[] .= "\n".'<div class="ratingblock">'; $static_rater[] .= '<div id="unit_long'.$id.'">'; $static_rater[] .= '<ul id="unit_ul'.$id.'" class="unit-rating" style="width:'.$rating_unitwidth*$units.'px;">'; $static_rater[] .= '<li class="current-rating" style="width:'.$rating_width.'px;">Aktualnie '.$rating2.'/'.$units.'</li>'; $static_rater[] .= '</ul>'; $static_rater[] .= '<p class="static">Ocena: <strong> '.$rating1.'</strong>/'.$units.' ('.$count.' '.$tense.') <em>This is \'static\'.</em></p>'; $static_rater[] .= '</div>'; $static_rater[] .= '</div>'."\n\n"; } else { $rater =''; $rater.='<div class="ratingblock">'; $rater.='<div id="unit_long'.$id.'">'; $rater.=' <ul id="unit_ul'.$id.'" class="unit-rating" style="width:'.$rating_unitwidth*$units.'px;">'; $rater.=' <li class="current-rating" style="width:'.$rating_width.'px;">Aktualnie '.$rating2.'/'.$units.'</li>'; for ($ncount = 1; $ncount <= $units; $ncount++) { // loop from 1 to the number of units if(!$voted) { // if the user hasn't yet voted, draw the voting stars $rater.='<li><a href="db.php?j='.$ncount.'&q='.$id.'&t='.$ip.'&c='.$units.'" title="'.$ncount.' na '.$units.'" class="r'.$ncount.'-unit rater" rel="nofollow">'.$ncount.'</a></li>'; } } $ncount=0; // resets the count $rater.=' </ul>'; $rater.=' <p'; if($voted){ $rater.=' class="voted"'; } $rater.='>Ocena: <strong> '.$rating1.'</strong>/'.$units.' ('.$count.' '.$tense.')'; $rater.=' </p>'; $rater.='</div>'; $rater.='</div>'; return $rater; } } ?>
<?php /* Page: db.php Created: Aug 2006 Last Mod: Mar 18 2007 This page handles the database update if the user does NOT have Javascript enabled. --------------------------------------------------------- ryan masuga, masugadesign.com ryan@masugadesign.com Licensed under a Creative Commons Attribution 3.0 License. <a href="http://creativecommons.org/licenses/by/3.0/" target="_blank">http://creativecommons.org/licenses/by/3.0/</a> See readme.txt for full credit details. --------------------------------------------------------- */ require('_config-rating.php'); // get the db connection info //getting the values $ip = $_SERVER['REMOTE_ADDR']; $referer = $_SERVER['HTTP_REFERER']; if ($vote_sent > $units) die("Sorry, vote appears to be invalid."); // kill the script because normal users will never see this. //connecting to the database to get some information $query = mysql_query("SELECT total_votes, total_value, used_ips FROM $rating_dbname.$rating_tableName WHERE id='$id_sent' ")or die(" Error: ".mysql_error()); $count = $numbers['total_votes']; //how many votes total $current_rating = $numbers['total_value']; //total number of rating added together and stored $sum = $vote_sent+$current_rating; // add together the current vote value and the total vote value if($count == 1){ $tense = "głos"; //plural form votes/vote }elseif($count == 2 OR 3 OR 4){ $tense = "głosy"; //plural form }elseif($count >=5){ $tense = "głosów"; //plural form }elseif($count == 0){ $tense = "głosów"; //plural form } // checking to see if the first vote has been tallied // or increment the current number of votes ($sum==0 ? $added=0 : $added=$count+1); // if it is an array i.e. already has entries the push in another value //IP check when voting $voted=mysql_num_rows(mysql_query("SELECT used_ips FROM $rating_dbname.$rating_tableName WHERE used_ips LIKE '%".$ip."%' AND id='".$id_sent."' ")); if(!$voted) { //if the user hasn't yet voted, then vote normally... if (($vote_sent >= 1 && $vote_sent <= $units) && ($ip == $ip_num)) { // keep votes within range $update = "UPDATE $rating_dbname.$rating_tableName SET total_votes='".$added."', total_value='".$sum."', used_ips='".$insertip."' WHERE id='$id_sent'"; } exit; } //end for the "if(!$voted)" ?>
$ip = $user_name;
//odbieram nazwę użytkownika //pobieram nazwę użytkownika z wcześniej przypisanej funkcji $user_name = $_SESSION['user_name'] $ip = $user_name; $referer = $_SERVER['HTTP_REFERER'];