PHP Ratingsystem - Beispiel: Witze Ratingsystem Bewertung Speichern
Autor
Flitze
Klicks 83467
Keywords:
PHP Rating System, PHP Ranking System Tutorial, PHP Rating Tutorial, PHP Bewertungssystem, PHP Ranking erstellen, Rating System Tutorial, PHP Ranking System, Witz, Rating, Bewertung speichern
Klicks 83467
Rating für PHP Ratingsystem
7.7 von 10
Bewertungen418
Stand
20.06.2010
7.7 von 10
Bewertungen418
Keywords:
PHP Rating System, PHP Ranking System Tutorial, PHP Rating Tutorial, PHP Bewertungssystem, PHP Ranking erstellen, Rating System Tutorial, PHP Ranking System, Witz, Rating, Bewertung speichern
Breadcrumb:
Tutorials » PHP Ratingsystem » PHP Ratingsystem - Beispiel: Witze Ratingsystem Bewertung Speichern
Speichern der Bewertung
[ADSENSE_LINE]Beim Speichern der Bewertung werden 2 Werte erwartet:
- Die ID des zu bewertenden Witzes
- Die gewählte Punktzahl
An dieser Stelle muss man verschiedene Prüfungen durchführen, z.B. ob eine ID übergeben wurde, ob diese ID auch zu einem gültigen Witz gehört und ob das Rating innerhalb des erlaubten Punktzahlbereiches liegt. Anschließend muss nur noch das Rating entsprechend erhöht werden. Funktionieren tut das Ganze mit dem folgenden Quellcode:
PHP:
<?php
// Prüfen, ob ID und Punktzahl übergeben wurden
$rate = isset($_POST['Bewertung'])?(int)$_POST['Bewertung']:0;
$id = isset($_POST['ID'])?(int)$_POST['ID']:0;
// Prüfen, ob die ID gültig ist
$sql ="SELECT
COUNT(*)
FROM
Witze
WHERE
ID = '".mysql_real_escape_string($id)."'
";
$result = mysql_query($sql) OR die(mysql_error()."<pre>".$sql."</pre>");
$id_valid = mysql_result($result,0);
if(!$id_valid)
echo "<p>Die gewählte Witz-ID ist ungültig.</p>";
// Prüfen, ob die Punktzahl im erlaubten Bereich liegt
elseif($rate<1 OR $rate>5)
echo "<p>Sie können nicht weniger als 1 oder mehr als 5 Punkte vergeben.</p>";
else{
// Update Rating
$sql = "UPDATE
Witze
SET
Rating_Summe = Rating_Summe+".$rate.",
Rating_Anzahl = Rating_Anzahl+1
WHERE
ID = '".mysql_real_escape_string($id)."'
";
mysql_query($sql) OR die(mysql_error()."<pre>".$sql."</pre>");
echo "<p>Sie haben den Witz erfolgreich mit ".$rate." Punkten bewertet.</p>";
}
echo "<p>Zurück zur <a href=\"show_witze.php\">Witzeanzeige</a></p>";
?>
Anmerkung:
Ich verwende MySQL 5.1.30, ich bin mir nicht sicher, ob das verwendete Statement
PHP:
<?php
//...
$sql = "UPDATE
Witze
SET
Rating_Summe = Rating_Summe+".$rate.",
Rating_Anzahl = Rating_Anzahl+1
WHERE
ID = '".mysql_real_escape_string($id)."'
";
//...
?>
auch mit einer älteren Version funktioniert. Knackpunkt könnte der SET-Teil sein, bei dem mit einer Addition gearbeitet wird. Sollte es so nicht funktionieren, müsste der entsprechende Witz erst mittels der ID aus der Datenbank gelesen, danach Rating_Anzahl und Rating_Summe erhöht und der Witz dann mit den neuen Werten geupdatet werden.
Zurück zur vorigen Seite:
PHP Ratingsystem - Beispiel: Witze Ratingsystem Daten anzeigen Weiter zur nächsten Seite:
PHP Ratingsystem - Vor Mehrfachbewertungen schützen