WebLinkBook
Avatar WebLinkBook
Themenersteller
Kfz-Meister
Fortgeschrittener (78 Beiträge)

Kleines Problem mit rating php script

am 20.07.2010, 14:07 Uhr eröffnete WebLinkBook folgenden Thread
PHP & MySQL    3218 mal gelesen    13 Antwort(en).

Hallo zusammen,

ich habe ein kleinen Problem mit diesem rating script und zwar weis ich nicht wohin er die Bewertungen abspeichert. Ansonsten funzst es einwandfrei. Ich Poste das einfach mal vielleicht kann das jemand herauslesen.

Gruß
Thomas

<?

// User settings
$rater_ip_voting_restriction = true; // restrict ip address voting (true or false)
$rater_ip_vote_qty=1; // how many times an ip address can vote
$rater_already_rated_msg="You have already rated this item. You were allowed ".$rater_ip_vote_qty." vote(s).";
$rater_not_selected_msg="You have not selected a rating value.";
$rater_thankyou_msg="Thankyou for voting.";
$rater_generic_text="this item"; // generic item text
$rater_end_of_line_char="\n"; // may want to change for different operating systems



if(!isset($rater_id)) $rater_id=1;
if(!isset($rater_item_name)) $rater_item_name=$rater_generic_text;


// DO NOT MODIFY BELOW THIS LINE
$rater_filename='item_'.$rater_id.".rating";
$rater_rating=0;
$rater_stars="";
$rater_stars_txt="";
$rater_rating=0;
$rater_votes=0;
$rater_msg="";

// Rating action
if(isset($_REQUEST["rate".$rater_id])){
if(isset($_REQUEST["rating_".$rater_id])){
while(list($key,$val)=each($_REQUEST["rating_".$rater_id])){
$rater_rating=$val;
}
$rater_ip = getenv("REMOTE_ADDR");
$rater_file=fopen($rater_filename,"a+");
$rater_str="";
$rater_str = rtrim(fread($rater_file, 1024*8),$rater_end_of_line_char);
if($rater_str!=""){
if($rater_ip_voting_restriction){
$rater_data=explode($rater_end_of_line_char,$rater_str);
$rater_ip_vote_count=0;
foreach($rater_data as $d){
$rater_tmp=explode("|",$d);
$rater_oldip=str_replace($rater_end_of_line_char,"",$rater_tmp[1]);
if($rater_ip==$rater_oldip){
$rater_ip_vote_count++;
}
}
if($rater_ip_vote_count > ($rater_ip_vote_qty - 1)){
$rater_msg=$rater_already_rated_msg;
}else{
fwrite($rater_file,$rater_rating."|".$rater_ip.$rater_end_of_line_char);
$rater_msg=$rater_thankyou_msg;
}
}else{
fwrite($rater_file,$rater_rating."|".$rater_ip.$rater_end_of_line_char);
$rater_msg=$rater_thankyou_msg;
}
}else{
fwrite($rater_file,$rater_rating."|".$rater_ip.$rater_end_of_line_char);
$rater_msg=$rater_thankyou_msg;
}
fclose($rater_file);
}else{
$rater_msg=$rater_not_selected_msg;
}
}

// Get current rating
if(is_file($rater_filename)){
$rater_file=fopen($rater_filename,"r");
$rater_str="";
$rater_str = fread($rater_file, 1024*8);
if($rater_str!=""){
$rater_data=explode($rater_end_of_line_char,$rater_str);
$rater_votes=count($rater_data)-1;
$rater_sum=0;
foreach($rater_data as $d){
$d=explode("|",$d);
$rater_sum+=$d[0];
}
$rater_rating=number_format(($rater_sum/$rater_votes), 2, '.', '');
}
fclose($rater_file);
}else{
$rater_file=fopen($rater_filename,"w");
fclose($rater_file);
}

// Assign star image
if ($rater_rating <= 0 ){$rater_stars = "./img/00star.gif";$rater_stars_txt="Not Rated";}
if ($rater_rating >= 0.5){$rater_stars = "./img/05star.gif";$rater_stars_txt="0.5";}
if ($rater_rating >= 1 ){$rater_stars = "./img/1star.gif";$rater_stars_txt="1";}
if ($rater_rating >= 1.5){$rater_stars = "./img/15star.gif";$rater_stars_txt="1.5";}
if ($rater_rating >= 2 ){$rater_stars = "./img/2star.gif";$rater_stars_txt="2";}
if ($rater_rating >= 2.5){$rater_stars = "./img/25star.gif";$rater_stars_txt="2.5";}
if ($rater_rating >= 3 ){$rater_stars = "./img/3star.gif";$rater_stars_txt="3";}
if ($rater_rating >= 3.5){$rater_stars = "./img/35star.gif";$rater_stars_txt="3.5";}
if ($rater_rating >= 4 ){$rater_stars = "./img/4star.gif";$rater_stars_txt="4";}
if ($rater_rating >= 4.5){$rater_stars = "./img/45star.gif";$rater_stars_txt="4.5";}
if ($rater_rating >= 5 ){$rater_stars = "./img/5star.gif";$rater_stars_txt="5";}


// Output
echo '

';
echo '<form method="post" action="'.$_SERVER["PHP_SELF"].'">';
echo '

Rate '.$rater_item_name.'

';
echo '

';
echo ''.$rater_stars_txt.' stars Ave. rating: '.$rater_stars_txt.' from '.$rater_votes.' votes.';
echo '

';
echo '

';
echo '';
echo '';
echo '';
echo '';
echo '';
echo '<input type="hidden" name="rs_id" value="'.$rater_id.'" />';
echo '<input type="submit" name="rate'.$rater_id.'" value="Rate" />';
echo '

';
if($rater_msg!="") echo "

".$rater_msg."

";
echo '</form>';
echo '

';

?>




WebLinkBook
Kostenloses Branchen- und RSS Verzeichnis

romacron
JDev Xer
Content Gott (1224 Beiträge)
am 20.07.2010, 14:30 Uhr schrieb romacron

Hallo Thomas,
versuch mal das "echo $rater_filename;"

das ist die Datei.


WebLinkBook
Avatar WebLinkBook
Kfz-Meister
Fortgeschrittener (78 Beiträge)
am 20.07.2010, 14:36 Uhr schrieb WebLinkBook

romacron schrieb:

Hallo Thomas,
versuch mal das "echo $rater_filename;"

das ist die Datei.


Hallo Roman,

ich habe keine andere Datei und die Bewertungen werden trotzdem gespeichert, das ist das dubiose daran.


WebLinkBook
Kostenloses Branchen- und RSS Verzeichnis

romacron
JDev Xer
Content Gott (1224 Beiträge)
am 20.07.2010, 14:41 Uhr schrieb romacron

Hallo Thomas,
Dein Quelltext sagt ganz klar fopen,fclose . Für mich sind das PHP Dateizugriffe mittels lesen und schreiben.
Was gibt denn das echo command zurück?

Kann es sein, dass Du im Quelltext verrutscht bist und es zwei Speichermöglichkeiten gibt?
Eine DB und eine via Datei.
$rater_file=fopen($rater_filename,"r");
print_r($rater_file);


WebLinkBook
Avatar WebLinkBook
Kfz-Meister
Fortgeschrittener (78 Beiträge)
am 20.07.2010, 14:54 Uhr schrieb WebLinkBook

romacron schrieb:

Hallo Thomas,
Dein Quelltext sagt ganz klar fopen,fclose . Für mich sind das PHP Dateizugriffe mittels lesen und schreiben.
Was gibt denn das echo command zurück?

Kann es sein, dass Du im Quelltext verrutscht bist und es zwei Speichermöglichkeiten gibt?
Eine DB und eine via Datei.
$rater_file=fopen($rater_filename,"r");
print_r($rater_file);


du keine Ahnung, habe eine item_1.rating Datei und die ist leer.

Habe mal eine test Datei gemacht verzeichnisse-seotools.eiwen.net/homepage-tools/test.html


funktioniert einfanfrei aber der Speicherort ist mir rätselhaft????


WebLinkBook
Kostenloses Branchen- und RSS Verzeichnis

romacron
JDev Xer
Content Gott (1224 Beiträge)
am 20.07.2010, 14:59 Uhr schrieb romacron

Last Chance,

Mit dem Debugger locker flockig mal die url durch Stepen



gelöschter Benutzer
am 20.07.2010, 15:02 Uhr schrieb

Das Script sollte eine Datei im selben Verzeichnis erstellen wo sich die PHP Datei des Scriptes befindet. Diese sollte >item_1.rating< heisen.

EDIT:

verzeichnisse-seotools.eiwen.net/homepage-tools/item_1.rating


WebLinkBook
Avatar WebLinkBook
Kfz-Meister
Fortgeschrittener (78 Beiträge)
am 20.07.2010, 15:10 Uhr schrieb WebLinkBook

Ultima schrieb:

Das Script sollte eine Datei im selben Verzeichnis erstellen wo sich die PHP Datei des Scriptes befindet. Diese sollte >item_1.rating< heisen.

EDIT:

verzeichnisse-seotools.eiwen.net/homepage-tools/item_1.rating



Habe jetzt die Datei item_1.rating (zugriffsrechte 755) angelegt und die id auf 1 umgestellt, ein paar mal berwetet, Bewrtungen sind gespeichert aber die Datei "item_1.rating" ist leer.


WebLinkBook
Kostenloses Branchen- und RSS Verzeichnis

WebLinkBook
Avatar WebLinkBook
Kfz-Meister
Fortgeschrittener (78 Beiträge)
am 20.07.2010, 15:13 Uhr schrieb WebLinkBook

Ultima schrieb:

verzeichnisse-seotools.eiwen.net/homepage-tools/item_1.rating




Cool jetzt sehe ich was gespeichert wurde nur wo hatt er diese Datei angelegt????????


WebLinkBook
Kostenloses Branchen- und RSS Verzeichnis


gelöschter Benutzer
am 20.07.2010, 15:19 Uhr schrieb

WebLinkBook schrieb:

Ultima schrieb:

verzeichnisse-seotools.eiwen.net/homepage-tools/item_1.rating




Cool jetzt sehe ich was gespeichert wurde nur wo hatt er diese Datei angelegt????????



Im selben Verzeichnis wo die Datei mit dem Script aus deinem 1. Post liegt.


WebLinkBook
Avatar WebLinkBook
Kfz-Meister
Fortgeschrittener (78 Beiträge)
am 20.07.2010, 15:22 Uhr schrieb WebLinkBook

Ultima schrieb:

WebLinkBook schrieb:

Ultima schrieb:

verzeichnisse-seotools.eiwen.net/homepage-tools/item_1.rating




Cool jetzt sehe ich was gespeichert wurde nur wo hatt er diese Datei angelegt????????



Im selben Verzeichnis wo die Datei mit dem Script aus deinem 1. Post liegt.


Dankeschön, habe die ganze Zeit im Ordner vote nachgeschaut aber das der mir neue Dateien anlegt hätte ich jetzt nicht gedacht.
Nochmals vielen Dank an alle, Problem gelöst.

Gruß
Thomas


WebLinkBook
Kostenloses Branchen- und RSS Verzeichnis



« zurück zu: PHP & MySQL

Das Seitenreport Forum hat aktuell 5276 Themen und 36111 Beiträge.
Insgesamt sind 48363 Mitglieder registriert.