vpGuestbook - Gästebuchmodul für die 4.6.x

Dodger77
Beiträge: 3626
Registriert: Di 12. Okt 2004, 20:00
Wohnort: Voerde (Niederrhein)
Kontaktdaten:

Beitrag von Dodger77 » Di 3. Apr 2007, 16:47

@Bloody: Das Problem ist bisher nicht aufgetaucht. Kann man sich das irgendwo ansehen?

Dodger77
Beiträge: 3626
Registriert: Di 12. Okt 2004, 20:00
Wohnort: Voerde (Niederrhein)
Kontaktdaten:

Beitrag von Dodger77 » Di 3. Apr 2007, 17:03

Bloody hat geschrieben:und mit den Avaraten gibt es auch noch Probleme.
Ich kann beim erstellen eines Eintrags eins auswählen, in die DB wird jedoch nur der Pfad und nicht der dateiname geschrieben. Demzufolge kann das Avatar auch nicht mehr angezeigt werden...
Nimm entweder den Dropdown für die Avatare oder ändere im Output des Eingabe-Moduls folgenden Teil:

Code: Alles auswählen

function bilder_radio ($bilder) {
global $cfgClient, $client, $bilderpfad, $einzeltag;

  $code = "";
  if (is_array($bilder)) {
    foreach ($bilder as $bild) {
      $code .= "<div style="float: left;"><img src="" . $cfgClient[$client]['path']['htmlpath'] . $cfgClient[$client]['upload'] . $bilderpfad . $bild . "" alt="$bild" ".$einzeltag."><br".$einzeltag."><input type="radio" name="test" value="$bild"".$einzeltag."></div>\n";
    }
    $code .= "<br style="clear: all;"".$einzeltag.">";
  }
  return $code;

}
in:

Code: Alles auswählen

function bilder_radio ($bilder) {
global $cfgClient, $client, $bilderpfad, $einzeltag;

  $code = "";
  if (is_array($bilder)) {
    foreach ($bilder as $bild) {
      $code .= "<div style="float: left;"><img src="" . $cfgClient[$client]['path']['htmlpath'] . $cfgClient[$client]['upload'] . $bilderpfad . $bild . "" alt="$bild" ".$einzeltag."><br".$einzeltag."><input type="radio" name="image" value="$bild"".$einzeltag."></div>\n";
    }
    $code .= "<br style="clear: all;"".$einzeltag.">";
  }
  return $code;

}

Bloody
Beiträge: 11
Registriert: Mo 15. Jan 2007, 12:34
Kontaktdaten:

Beitrag von Bloody » Di 3. Apr 2007, 17:07

Ich werde es gleich testen.
Aber kann es sein das die beiden Code Strücke identisch sind?

Dodger77
Beiträge: 3626
Registriert: Di 12. Okt 2004, 20:00
Wohnort: Voerde (Niederrhein)
Kontaktdaten:

Beitrag von Dodger77 » Di 3. Apr 2007, 17:10

Bloody hat geschrieben:Aber kann es sein das die beiden Code Strücke identisch sind?
Nein, weshalb sollte ich das sonst posten?!?

Bloody
Beiträge: 11
Registriert: Mo 15. Jan 2007, 12:34
Kontaktdaten:

Beitrag von Bloody » Di 3. Apr 2007, 19:21

Dodger77 hat geschrieben:
Bloody hat geschrieben:Aber kann es sein das die beiden Code Strücke identisch sind?
Nein, weshalb sollte ich das sonst posten?!?
Danke dir.
Ich hätte wohl mal die Augen aufmachen sollen, dann hätte ich den Unterschied gesehen.

Aber etwas positives gibt es schon, denn jetzt zeigt er mir das Avatar an ;=)

borsti1oo
Beiträge: 2
Registriert: Di 10. Apr 2007, 08:19
Kontaktdaten:

Fehlermeldung bie der Ausgabe

Beitrag von borsti1oo » Di 10. Apr 2007, 08:56

Hallo Zusammen,

ich bin ein absoluter Newbie, der seine private Homepage mit diesem tollen GB verschönern möchte.
Ich habe das GB in der neuesten Version und nach Anleitung installiert. Das ging auch recht problemlos und einfach.

Leider erhalte ich in der Ausgabe folgende Fehlermeldung:

"/") . "\(\"?(.*?)\"?,\040?(\d+?)\)\}/", $template, $array2_matches); for($i = ($anzahlMatches - 1); $i >= 0; $i--) { $evaledCode = eval("return " . $functionname . "(\"" . $array2_matches[1][$i] . "\", " . $array2_matches[2][$i] . ");"); $template = preg_replace( "/(?si)\{" . preg_quote($functionname, "/") . "\(\"?" . preg_quote($array2_matches[1][$i], "/") . "\"?,\040?" . preg_quote($array2_matches[2][$i], "/") . "\)\}/", $evaledCode, $template ); } //end for(i) } // end foreach return $template; } } ?> Es gibt bereits 2 Einträge in diesem Gästebuch.



Was habe ich falsch gemacht und was muss ich ändern?

Vielen Dank in voraus für die Hilfe

borsti1oo

Dodger77
Beiträge: 3626
Registriert: Di 12. Okt 2004, 20:00
Wohnort: Voerde (Niederrhein)
Kontaktdaten:

Re: Fehlermeldung bie der Ausgabe

Beitrag von Dodger77 » Di 10. Apr 2007, 10:01

borsti1oo hat geschrieben:Was habe ich falsch gemacht und was muss ich ändern?
Ich tippe mal auf einen Fehler im Modul-Template des Ausgabe-Moduls.

borsti1oo
Beiträge: 2
Registriert: Di 10. Apr 2007, 08:19
Kontaktdaten:

Re: Fehlermeldung bie der Ausgabe

Beitrag von borsti1oo » Di 10. Apr 2007, 10:49

Vielen Dank für die schnelle Antwort.
Ich tippe mal auf einen Fehler im Modul-Template des Ausgabe-Moduls.
Ich habe die „class.ExtendedTemplate.php“ noch einmal auf dem Server ausgetauscht und das Auagabe Modul neu installiert, und siehe da, das GB läuft ohne Fehlermeldung :D

Gruß
borsti1oo

Deddy
Beiträge: 79
Registriert: Do 1. Jun 2006, 09:00
Kontaktdaten:

Beitrag von Deddy » So 22. Apr 2007, 10:20

Hallo!
Ich bekomme das Captcha einfach nicht zum Laufen. Bin schon überglücklich dass sich jemand die Zeit genommen hat, dieses Thema umzusetzen.

Ich denke dass der Fehler in meiner captcha.php liegt. Mir wird das .PNG nicht angezeigt. Statt dessen verweisst es lediglich auf mein captcha.php

Code: Alles auswählen

<?php
   session_start();
   unset($_SESSION['captcha_spam']);

   function randomString($len) {
      srand(date("s"));
      //Der String $possible enthält alle Zeichen, die verwendet werden sollen
      $possible="Acwveffgqrjto34t934fjaveht49trth0rhfjefjvljt4rwzj";
      $str="";
      while(strlen($str)<$len) {
        $str.=substr($possible,(rand()%(strlen($possible))),1);
      }
   return($str);
   }

   $text = randomString(5);  //Die Zahl bestimmt die Anzahl stellen
   $_SESSION['captcha_spam'] = $text;
         
   header('Content-type: image/png');
   $img = ImageCreateFromPNG('http://www.meine-domain.de/captcha/captcha.PNG'); //Backgroundimage
   $color = ImageColorAllocate($img, 0, 0, 0); //Farbe
   $ttf = "http://www.meine-domain.de/captcha/captcha/arial.ttf"; //Schriftart
   $ttfsize = 25; //Schriftgrösse
   $angle = rand(0,5);
   $t_x = rand(5,30);
   $t_y = 35;
   imagettftext($img, $ttfsize, $angle, $t_x, $t_y, $color, $ttf, $text);
   imagepng($img);
   imagedestroy($img);
?> 
Ich muss noch dazu sagen, dass ich Moderewrite eingesetzt habe. Vielleicht liegt es daran?
Wäre prima, wenn jemand mir weiterhelfen würde.

AkaneIkeda
Beiträge: 1
Registriert: Mi 30. Mai 2007, 23:38
Wohnort: St.Pölten
Kontaktdaten:

HELP!

Beitrag von AkaneIkeda » Mi 30. Mai 2007, 23:44

Ich bräuchte ganz dringend Hilfe...
für ein Projekt meiner Fachhochschule sollen wir eine Page via Contenido erstellen, haben das Programm aber nicht installiert sondern greifen auf einen internen Sever zu (soweit ich das verstanden hat)... insofern weiß ich nicht, wohin ich das Extended Template kopieren soll....

Ich bin noch ein absoluter Neuling, hab keinen Ahnung von Programmieren, also erbitte ich mir Gnade mit eurem Urteil... ich denke es ist in diesem Forum schon besprochen worden, aber ich komme einfach nicht weiter.

Ich kriege immer wieder diese Fehlermeldung bei der Ausgabe:

Es gibt bereits 3 Einträge in diesem Gästebuch. {DATE2} {DATE1} {IMAGE} {NAME} {if("{USER1}" != "")} aus {USER1} {/if} schreibt: {if("{URL}" != "")} Homepage {/if} {if("{EMAIL}" != "")} Email {/if}{IPHOST} {ENTRY} {if("{EDIT}" == "1")} Kommentar: {COMMENT} {else if("{COMMENT}" != "")} Kommentar: {COMMENT} {/if} {if("{EDIT}" == "1")} {ADMINLINKS} {/if}


Danke im Vorhinein für die Mühe! :cry:

mauerblume
Beiträge: 89
Registriert: Do 12. Feb 2004, 20:42
Wohnort: Niederlausitz
Kontaktdaten:

Richtige PHP Datei für Captcha

Beitrag von mauerblume » Di 12. Jun 2007, 01:08

Kann mir bitte jemand erklären, WO ich in der .php Datei einen Sicherheitscode haben soll?

Weil ich das hier nicht so richtig verstehe:
ACHTUNG
Code:

Code: Alles auswählen

$sicherheits_eingabe = encrypt($_POST["sicherheitscode"], "DEINEN SICHERHEITSCODE HIER EINTRAGEN");
Hier muss der selbe Sicherheitscode eingetragen werden wie in der captcha.php und nehmt da einen anderen als den Beispielcode.
Diese Zeile gibt es im Output des Moduls, ja.
Aber in der .php Datei gibt es so etwas nicht.

Könnte bitte jemand die richtige .php Datei posten, oder als pm schicken?
Außerdem wäre ich auch an der class.captcha interessiert, kann sie aber nirgendwo finden. Könnte mir jemand diese zukommen lassen.

Bis jetzt habe ich den Stand, dass der Captcha und der Hintergrund ordentlich generiert werden.
Mehr aber auch nicht.
Erkannt bzw geprüft wird der Code dann nicht. Das Formular gibt Fehler aus und wird nicht abgeschickt.
Ich denke, dass die PHP Datei in dem Link
http://www.stoppt-den-spam.info/webmast ... cript.html
irgendwie nicht die ist, von der hier ausgegangen wird.

Danke für die Hilfe.
Es muß doch irgendwann mal möglich sein, in Contenido ein Gästebuch mit Spamschutz zu realisieren.
Ich habe auch schon ne Weile gedoktort, dieser Thread hier scheint kurz vor dem Durchbruch zu sein.

Dodger77
Beiträge: 3626
Registriert: Di 12. Okt 2004, 20:00
Wohnort: Voerde (Niederrhein)
Kontaktdaten:

Re: HELP!

Beitrag von Dodger77 » Di 12. Jun 2007, 06:53

AkaneIkeda hat geschrieben: insofern weiß ich nicht, wohin ich das Extended Template kopieren soll....
In dem Download ist ein Ordner "classes". Die Datei darin muss in deiner Contenido-Installation unter "/contenido/classes/" positioniert werden.

Seili
Beiträge: 21
Registriert: Di 15. Mär 2005, 16:47
Wohnort: Osnabrück
Kontaktdaten:

Beitrag von Seili » Di 12. Jun 2007, 06:57

Guten Tag,

ich habe das Spamproblem über einen kleinen Umweg realisiert, aber ohne Captcha.
Ich habe im Formular ein weiteres Feld eingefügt in dem eine Frage beantwortet werden muss.
Z.B. Wie heisst unser Projekt, Wie heisst diese Band oder wie heisst diese Seite?

Das kann im Normalfall jeder beantworten, ausser die Spambots, die meiner Meinung nach in diesem Fall keinen Zusammenhang feststellen können.

Der Aufwand für den User ist nicht höher als bei einem Captcha.

Einbauaufwand war minimal (wenn man davon absieht das ich erst in einer falschen Datei gewurschtelt habe)

Im Modul Gästebuch Eintrag unterhalb der "function eintragen ()"

folgenden Code hinzugefügt:

Code: Alles auswählen

  // Spam überprüfen
  if ($_POST['user2'] == "") {       // wenn Feld Spamabfrage leer dann gebe folgende Meldung:
    $error = "Bitte gebe die Spamabfrage an!";
  }
  else {
      $user2 = htmlentities(strip_tags($_POST['user2'])); //zuweisen des Feldinhalts von user2 zur Variable $user2
      $user2 = strtoupper ($user2);  //umwandeln der eingegebenen Zeichenfolge in Großbuchstaben, dadurch wird Groß/Klein-Schreibung egal
      if ($user2 != "ANTWORT") { // Kontrolle der Eingabe, bei nicht Übereinstimmung, Fehler ausgeben
          $error = "Bitte beantworte die Spamabfrage richtig! (Schreibweise)";
        }
}
Wie Ihr seht habe ich bei mir das noch freie User2 Feld benutzt. Man kann natürlich auch ein neues Feld anlegen, dies muss dann aber auch in der DB geschehen.

Da ich kein PHP-Guru bin, kann es gut sein das obiger Code noch optimiert werden kann, es funktioniert so einwandfrei. Ich habe seit erfolgreichem Einbau keine Spameinträge mehr, vorher waren es 5 - 10 pro Tag.

Gruß
Seili

mauerblume
Beiträge: 89
Registriert: Do 12. Feb 2004, 20:42
Wohnort: Niederlausitz
Kontaktdaten:

Beitrag von mauerblume » Di 12. Jun 2007, 13:46

Da in deinem Fall ja auch die "Antwort" auf die einfache Frage im Quellcode gespeichert ist, könnte diese doch auch durch geschickte Programmierung ausgelesen werden, oder?

Seili
Beiträge: 21
Registriert: Di 15. Mär 2005, 16:47
Wohnort: Osnabrück
Kontaktdaten:

Beitrag von Seili » Di 12. Jun 2007, 13:53

möglich ist das bestimmt, aber ich glaube kaum, das sich jemand die Mühe macht, für jede Seite herauszufinden wie die Abfrage gestrickt ist um dem Spambot zu sagen wo er im Code nach der Antwort zu suchen hat.

Wenn ein Mensch einen "Spameintrag" machen will, kann er es ja eh, da er Fragen und Captcha beantworten kann ;)

In der von Contenido erzeugten Output-Datei steht die Antowort auf jedenfall nicht drinn. Ich denke mir also, das das daher recht safe ist.

Aber es gibt hier wesentlich mehr Leute die fit in der Materie sind um da etwas präziser zu antworten.

Bei mir ist der Erfolg mit einfachsten Mitteln auf jedenfall da. Sollte irgendwann mal ein Bot die Sache knacken, dann werde ich mi was neues ausdenken (oder Captcha einbauen) ;)

Gruß
Seili

Gesperrt