Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Pflichtfelder
#1
Hallo,

erstmal möcht ich sagen, das dies echt ein schönes GB ist.
Ich hab es nun auch soweit auf meine Design-Wünsche angepasst.
Jedoch würde ich gerne noch wissen wollen, wie man Pflichtfelder definieren kann?
Würde nämlich beispielsweise "Email" nicht als Pflichtfeld verwenden, dafür aber AIM (welches ich aber für einen anderen Eintrag verwende).
Ist dies irgendwo im Admin-Bereich möglich?
Oder ansonsten in irgend einer php-Datei?
Außerdem würde ich gerne wissen wollen, wo man einzelne Felder entfernen kann?
Wenn ich beispielsweise das Feld "ICQ" im entsprechenden Template (newentry_body.tpl) entferne, gibt es dann beim eintragen eine fehlermeldung:

Notice: Undefined index: message in [pfad]/newentry.php on line 64
Notice: Undefined index: icq in [pfad]/newentry.php on line 66


in der newentry.php habe ich jedoch nix geändert ...
Zitieren
#2
Das sollte Dir weiter helfen: <!-- l --><a class="postlink-local" href="http://forum.m-gb.org/viewtopic.php?p=638#p638">viewtopic.php?p=638#p638</a><!-- l -->

Das nächste mal bitte vorher Suchfunktion benutzen.
Zitieren
#3
Danke für den Hinweis ...

Aber die Fehlermeldung kommt leider immer noch Traurig
Zitieren
#4
Dir das jetzt alles zu erklären was Du da verändern müsstest, wäre zu aufwändig. Machen wir's mal auf die unkonventionelle Weise. Zwar nicht professionell, aber es sollte gehen. Öffne die "newentry.php" und mache in Zeile 29 vor
Code:
29  error_reporting(E_ALL);
zwei Schrägstriche. Also so:
Code:
29  //error_reporting(E_ALL);
Die Meldungen dürften dann weg sein.
Zitieren
#5
Hm ok, die fehlermeldungen sind ausgeblendet, jedoch kann ich weiter keine einträge absenden, da er meldet, ich hätte keinen text eingegeben, daweile hab ich welchen eingegeben :kopfkratz:
Zitieren
#6
Sag mir mal welche Felder Du denn genau weg haben möchtest.
Zitieren
#7
Ich will genau die Felder ICQ und MSN weg haben ... die habe ich im template einfach gelöscht. Am message-feld hab ich demzufolge gar nix geändert
Zitieren
#8
Ich kann ehrlich gesagt Dein Problem nicht nachvollziehen. ICQ und MSN sind keine Pflichtfelder. Somit wird selbst wenn man diese Felder aus der newentry_body.tpl rauslöscht, keine Fehlermeldung angezeigt, wenn nichts eingegeben wurde.

Ich hab' das mal selbst bei mir durchgeführt. Hier die newentry_body.tpl ohne die Felder ICQ und MSN:

.png   nixicqmsn3.png (Größe: 3,28 KB / Downloads: 5.025)
Hier mit Test-Eingaben jedoch ohne Sicherheitscode. Es wird lediglich angezeigt dass der Sicherheitscode nicht angegeben wurde.

.png   nixicqmsn2.png (Größe: 17,1 KB / Downloads: 4.801)
Und der erfolgreiche Eintrag im Gästebuch:

.png   nixicqmsn.png (Größe: 14,84 KB / Downloads: 4.798)
Ich habe lediglich in der newentry_body.tpl die Felder ICQ und MSN auskommentiert. Sieht so aus:
Code:
52  <!--<tr>
53        <td class="signin_l" align="left">
54        <span>{LANG_NEW_ENTRY_ICQ}</span>
55        </td>
56        <td class="signin_m" align="center">
57        <input class="main_textbox" type="text" name="icq" size="30" value="{POST_ICQ}">
58        </td>
59        <td class="signin_r" align="center">
60        <span>&nbsp;</span>
61        </td>
62  </tr>-->

Es ist also gar kein Problem diese Felder zu löschen.
Zitieren
#9
ob ich hier richtig bin, weiss ich nicht.
Auf der Suche nach einer Lösung bin ich bislang auch nicht fündig geworden.
Problem:
Am 04.02. habe ich das Gästebuch eingerichtet;
bislang bereits 4 SPAM Einträge erhalten !
Nun mag das ja nicht viel sein, aber es nervt und ein Zeichen dafür, wie schnell den Bots sind
Da Akismet für mich als "Nicht-Engländer" nicht in Frage kommt und Antispam Bee eine ähnlche Richtung verfolgt, hab ich mich für eine "Hauslöung" entschieden und in meinen anderen Gästebüchern (u.a.)
<!-- m --><a class="postlink" href="http://www.fewo-balogh.de/index.php?m=7">http://www.fewo-balogh.de/index.php?m=7</a><!-- m -->
eine kleine Barriere nach
" <!-- m --><a class="postlink" href="http://1ngo.de/web/captcha-spam.html">http://1ngo.de/web/captcha-spam.html</a><!-- m --> "
eingebaut und die wirkt seit Jahren prima !

Meine Frage, lässt sich das hier generell auch "nachrüsten" und wenn ja, welche Dateien müsste ich anpassen, ausser der entsprechenden css ?

Danke für die Hilfe
Zitieren
#10
Ich wiederhole mich nur ungern, aber ich sage es nochmal. Die Version 0.6.6 die bei kontent.com angeboten wird, ist veraltet. Seit Version 0.6.7 gibt es eine sogenannte Absendesperre, die auch in dem Link, den Du hier gepostet hast, dokumentiert wird. Sie sorgt dafür, dass man einen Zeitraum einstellen kann, in dem ein Benutzer das Formular absenden kann. Mit aktivierter Absendesperre und aktiviertem Akismet gehört Spam so gut wie der Vergangenheit an. Ich selbst habe beides aktiviert und habe nur noch 2-3 Spam-Einträge pro Monat. Dass Akismet für Dich als "Nicht-Engländer" nicht in Frage kommt, dafür kann ich nichts.

Als erstes würde ich bei kontent.com mal nachfragen, ob es denn möglich wäre, die Software auf die neueste Version zu aktualisieren. Das Verwenden veralteter Software spricht nämlich nicht gerade für den Hoster. Aber das ist nur meine persönliche Meinung.

Und generell kann man so eine Art Captcha mit einem versteckten Feld einbauen, dafür wären jedoch grundlegende Änderungen am Code selbst notwendig, und mir fehlt derzeit ganz ehrlich die Zeit das jetzt selbst erst einzubauen, um dann hier posten zu können, welche Dateien man dafür ändern muss. Ich werde es vielleicht morgen mal probieren, versprechen kann ich aber nichts.
Zitieren
#11
So, ich habe das mal eingebaut. Ich gebe dafür aber keine Garantie, dass es auch wirklich funktioniert. Habe es nur einmal kurz getestet. Öffne als erstes die "templates/mgbModern/main/newentry_body.tpl" und suche folgenden Abschnitt:
Code:
<tr>
                <td class="signin_l" align="left">
                <span>{LANG_NEW_ENTRY_EMAIL}</span>
                </td>
                <td class="signin_m" align="center">
                <input class="main_textbox" type="text" name="email" size="30" value="{POST_EMAIL}">
                </td>
                <td class="signin_r" align="center">
                <span>*</span>
                </td>
            </tr>
Ändere
Code:
name="email"
zu
Code:
name="epost"
oder einer anderen Bezeichnung Deiner Wahl. Vor diesen Absatz fügst Du folgendes ein:
Code:
<tr class="tr_nosee">
                <td class="signin_l" align="left">
                <span>{LANG_NEW_ENTRY_EMAIL}</span>
                </td>
                <td class="signin_m" align="center">
                <input class="main_textbox_nosee" type="text" name="email" size="30" value="">
                </td>
                <td class="signin_r" align="center">
                <span>*</span>
                </td>
            </tr>
Hier hat die Tabellenzeile die Bezeichnung "tr_nosee". Öffne das CSS-Style, das Du verwendest und füge
Code:
tr.tr_nosee {
    display: none; }
an irgend einer Stelle ein. Wo ist egal. Ersetze nun noch die "newentry.php" auf Deinem Server durch die, die an diesen Post angehängt ist. Aber beachte: Wenn Du eine andere Bezeichnung als "epost" gewählt hast, dann musst Du in dieser newentry.php jegliches Vorkommen von "epost" durch Deine Bezeichnung ersetzen.

Dann dürfte es normal funktionieren. Aber wie gesagt. Ich gebe keine Garantie.


Angehängte Dateien
.zip   newentry.zip (Größe: 7,3 KB / Downloads: 251)
Zitieren
#12
zunächst danke für die Mühe !
Alle Änderungen vollzogen.
Nach dem Einbinden der newentry.php wird mit dem Aufruf "Eintragen" ein Scriptfehler in Zeile 534 ausgegeben.
Gruß
f
Zitieren
#13
Es wäre hilfreich, wenn Du mir die genaue Fehlermeldung sagen könntest. Mit "Scriptfehler" kann ich nicht viel anfangen...
Zitieren
#14
Die Fehlermeldung lautet:
Fatal error: Call to undefined function template() in /WWWROOT/210106/htdocs/newentry.php on line 534

ich hab mal von der Fehlermeldung noch ein screen gemacht
da ich es nicht geschafft habe, das Bild einzufügen, hier der Link dorthin

http://www.aegidien-marktkirche.de/pdf/f...wentry.jpg

In der Fußzeile ist erkennbar, dass die Datei newentry.php aufgerufen werden wollte (um einen Eintrag vorzunehmen)

Wenn ich die ursprüngliche Datei wieder aktivire, dann wird die zusätzliche Zeile nicht ausgeblendet; es kann jedoch eingertragen werden.
Zitieren
#15
Bitte das Gästebuch mal auf den neuesten Stand bringen. Dazu die letzte Version 0.6.9.1 herunter laden, alle Dateien überschreiben, die "install/upgrade.php" ausführen, dann die Änderungen am Template nochmal machen, und die newentry.php durch die hier bereit gestellte ersetzen. Dann müsste es gehen.
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Pflichtfelder entfernen kaiser 9 17.808 30.08.2013, 06:54:12
Letzter Beitrag: Varadero

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste