Seite 1 von 1

Problem mit Kommentarmodul, Erweiterung mit Bewertungssystem

Verfasst: Mi 21. Jul 2004, 14:31
von KrissKrass
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:

Code: Alles auswählen

echo "No code was created for this art in this category."; 
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.

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&auml;ger!<br>
      F&uuml;lle einfach das folgende Formular vollst&auml;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&uuml;r den Tontr&auml;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&auml;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&auml;ger in
            ganzen S&auml;tzen und verzichte auf unn&ouml;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'");
}
}
?>

Verfasst: Do 22. Jul 2004, 12:25
von KrissKrass
Hat niemand von euch eine Idee, warum diese Fehlermeldung immer kommt beim eintragen eines Kommentares?

Verfasst: Do 22. Jul 2004, 12:40
von emergence
idee ?

setz mal die idcat ebenfalls in ein hidden field...

Verfasst: Do 22. Jul 2004, 15:04
von KrissKrass
Herzlichsten Dank... Es funktioniert wieder perfekt!