Problem mit Kommentarmodul, Erweiterung mit Bewertungssystem
Verfasst: Mi 21. Jul 2004, 14:31
Hallo Zusammen,
ich habe ein Problem mit dem Kommentarmodul. Ich habe es durch ein Bewertungssystem ergänzt und die ganze Zeit lief es ohne Probleme... Möchte ich jetzt jedoch einen Text eintragen, wird dieser nicht eingetragen sondern es erscheint folgende Fehlermeldung:
Weiß jemand woran das liegen kann?
Damit ihr euch einen Eindruck von dem Einsatzort des Kommentarscriptes machen könnt, besucht bitte folgende Seite: http://www.hiphop-pott.de/index.php?idcat=7. Wenn ihr dann auf eine Review klickt, findet ihr dort auch das Kommentarscript.
=================================================
Da ich das Kommentarscript verändert habe, sprich durch eine Bewertungsfunktion ergänzt habe, poste ich den neuen Code für das Modul hier mal, falls es jemand verwenden möchte.
ich habe ein Problem mit dem Kommentarmodul. Ich habe es durch ein Bewertungssystem ergänzt und die ganze Zeit lief es ohne Probleme... Möchte ich jetzt jedoch einen Text eintragen, wird dieser nicht eingetragen sondern es erscheint folgende Fehlermeldung:
Code: Alles auswählen
echo "No code was created for this art in this category.";
Damit ihr euch einen Eindruck von dem Einsatzort des Kommentarscriptes machen könnt, besucht bitte folgende Seite: http://www.hiphop-pott.de/index.php?idcat=7. Wenn ihr dann auf eine Review klickt, findet ihr dort auch das Kommentarscript.
=================================================
Da ich das Kommentarscript verändert habe, sprich durch eine Bewertungsfunktion ergänzt habe, poste ich den neuen Code für das Modul hier mal, falls es jemand verwenden möchte.
Code: Alles auswählen
Modulname: Kommentarmodul mit Bewertungssystem
Beschreibung: Mit Hilfe des Kommentarmoduls können Artikel von Besuchern kommentiert werden.
Die Kommentare können optional beim jeweiligen Artikel angezeigt werden.
1. MySQL-Tabelle anlegen
====================
CREATE TABLE con_kommentare (
ID int(3) unsigned NOT NULL DEFAULT '0' ,
LfdNr int(10) unsigned ,
Kommentar text ,
KommentarVon text ,
KommentarMail text ,
Bewertung text ,
TIMESTAMP timestamp(14)
);
2. Erstellen von Bewertungsgrafiken
============================
Du solltest dir ein Bewertungssystem überlegen, im Fall von diesem Modul, bewertet der User den Artikel mit Kronen.
Dafür habe ich mir folgenden Bewertungsschlüssel überlegt:
1 Krone = schlecht
2 Kronen = geht so
3 Kronen = ganz gut
4 Kronen = gut
5 Kronen = sehr fresh
6 Kronen = empfehlenswert
Nun habe ich .gif-Grafiken erstellt mit einer Krone bis zu sechs Kronen. Die einzelnen Bilder habe ich 1.gif bis 6.gif genannt und in den Images-Ordner hochgeladen.
Bewertet der User also nun den Artikel mit zwei Kronen, so wird die Zahl zwei in der Datenbank gespeichert und bei der Ausgabe der Bewertungen einfach durch eine Variable vor das .gif gesetzt.
Du kannst natürlich dir ein beliebiges Bewertungssystem überlegen... Z.B. mit Sternen.
3. Kommentare lesen
=================
***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname: Kommentarmodul mit Bewertungssystem
* Author: Christoph Preusche
* Copyright: Contenido - four for business / www.hiphop-pott.de
* Created: 21-07-2004
* Modified: 21-07-2004
************************************************/
<?php echo "'Kommentare lesen' gesetzt." ?>
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname: Kommentarmodul mit Bewertungssystem
* Author: Christoph Preusche
* Copyright: Contenido - four for business / www.hiphop-pott.de
* Created: 21-07-2004
* Modified: 21-07-2004
************************************************/
<?php
$kommentarcount = MYSQL_QUERY( "SELECT LfdNr FROM con_kommentare WHERE ID = '$idart'");
while ($kommcount = mysql_fetch_row($kommentarcount)){
$kommanzahl = $kommcount[0];
}
IF ($kommanzahl > 0) {
$sql = "select * from con_kommentare where ID = $idart order by LfdNr";
$query = mysql_query($sql);
$r = mysql_fetch_array($query);
do {
IF ($r[KommentarMail] != ""){
echo ("<b>Kommentar von:</b> <a
href=\"mailto:$r[KommentarMail]\">$r[KommentarVon]</a><br>"); }
Else {
echo ("<b>Kommentar von:</b> $r[KommentarVon]<br>");}
echo ("<b>Bewertung:</b> <img src=\"images/$r[Bewertung].gif\" width=\"112\" height=\"13\" align=\"absmiddle\" alt=\"_Bewertung\"><p>");
echo("<b>Kommentar:</b> " . $r[Kommentar] . "");
echo("<br><hr noshade>");
} while ($r = mysql_fetch_array($query));
}
?>
4. Kommentar schreiben und bewerten
==============================
***********************************************
* CONTENIDO MODUL - INPUT
*
* Modulname: Kommentarmodul mit Bewertungssystem
* Author: Christoph Preusche
* Copyright: Contenido - four for business / www.hiphop-pott.de
* Created: 21-07-2004
* Modified: 21-07-2004
************************************************/
<?php echo "'Kommentare schreiben' gesetzt." ?>
***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname: Kommentarmodul mit Bewertungssystem
* Author: Christoph Preusche
* Copyright: Contenido - four for business / www.hiphop-pott.de
* Created: 21-07-2004
* Modified: 21-07-2004
************************************************/
<?php
echo ("<form name=\"bew\" method=\"post\" action=\"$HTTP_REFERER\">");
echo ("<table width=\"433\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
<tr>
<td>Bewerte den vorgestellten Tonträger!<br>
Fülle einfach das folgende Formular vollständig aus und gib dein
Kommentar ab.</td>
</tr>
<tr>
<td><img src=\"images/magazin/reviews/space.gif\" width=\"20\" height=\"12\" alt=\"Space\"></td>
</tr>
<tr>
<td>
<table width=\"433\" border=\"0\" cellspacing=\"1\" cellpadding=\"3\" bgcolor=\"#999999\">
<tr>
<td width=\"200\" bgcolor=\"#CCCCCC\"><b>Dein Name:</b></td>
<td width=\"233\" bgcolor=\"#CCCCCC\">
<input type=\"text\" class=\"Kommentar\" name=\"name\">
</td>
</tr>
<tr bgcolor=\"#eeeeee\">
<td width=\"200\"><b>Deine eMail-Adresse:</b></td>
<td width=\"233\">
<input type=\"text\" class=\"Kommentar\" name=\"email\">
</td>
</tr>
<tr>
<td width=\"200\" bgcolor=\"#CCCCCC\" valign=\"top\"><b>Deine Bewertung:</b><br>
<font color=\"#666666\" size=\"1\">Vergib bis zu sechs Kronen
für den Tonträger. Eine Krone ist schlecht, sechs Kronen sind
absolut empfehlenswert.</font></td>
<td width=\"233\" bgcolor=\"#CCCCCC\">
<select name=\"bewertung\" class=\"Kommentar\" size=\"1\">
<option selected>Bitte wählen...</option>
<option value=\"1\">1 Krone = schlecht</option>
<option value=\"2\">2 Kronen = geht so</option>
<option value=\"3\">3 Kronen = ganz gut</option>
<option value=\"4\">4 Kronen = gut</option>
<option value=\"5\">5 Kronen = sehr fresh</option>
<option value=\"6\">6 Kronen = empfehlenswert</option>
</select>
</td>
</tr>
</table>
<img src=\"images/magazin/reviews/space.gif\" width=\"20\" height=\"8\" alt=\"Space\"><br>
<table width=\"433\" border=\"0\" cellspacing=\"1\" cellpadding=\"3\" bgcolor=\"#999999\">
<tr>
<td bgcolor=\"#CCCCCC\" width=\"190\" valign=\"top\"><b>Dein Kommentar:</b><br>
<font size=\"1\" color=\"#666666\">Bitte achte auf deine Ausdrucksweise
und deine Rechtschreibung. Bitte kommentier den Tonträger in
ganzen Sätzen und verzichte auf unnötige Spielereien wie:
Smilies, zu viele Ausrufezeichen oder Bilder in Form von Sonderzeichen.</font></td>
<td bgcolor=\"#CCCCCC\" width=\"228\" valign=\"top\">
<textarea name=\"kommentar\" class=\"Kommentar\" wrap=\"VIRTUAL\" rows=\"6\" cols=\"25\"></textarea>
</td>
</tr>
</table>
<img src=\"images/magazin/reviews/space.gif\" width=\"20\" height=\"8\" alt=\"Space\"><br>
<table width=\"433\" border=\"0\" cellspacing=\"0\" cellpadding=\"3\">
<tr>
<td>
<div align=\"right\"><input type=\"hidden\" name=\"idart\" value=\"$idart\"><input type=\"hidden\" name=\"komt\" value=\"do\">
<input type=\"submit\" class=\"Kommentar_Button\" name=\"submit\" value=\"Kommentar absenden\">
</div>
</td>
</tr>
</table>
</td>
</tr>
</table></form>");
if ($kommentar != "")
{
$kommentarcount = MYSQL_QUERY( "SELECT LfdNr FROM con_kommentare WHERE ID = '$idart'");
while ($kommcount = mysql_fetch_row($kommentarcount)){
$kommanzahl = $kommcount[0];
}
$kommentar = strip_tags($kommentar);
IF ($kommanzahl == "0" or $kommanzahl == "") {
$rezlfdnr = 1;
MYSQL_QUERY( "INSERT INTO con_kommentare set ID = $idart, LfdNr = $rezlfdnr,
Kommentar = '$kommentar', KommentarVon = '$name', KommentarMail = '$email', Bewertung = '$bewertung'");
} else {
$rezlfdnr = $kommanzahl + 1;
MYSQL_QUERY( "INSERT INTO con_kommentare set ID = $idart, LfdNr = $rezlfdnr,
Kommentar = '$kommentar', KommentarVon = '$name', KommentarMail = '$email', Bewertung = '$bewertung'");
}
}
?>