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

ich würde gerne das Pflichtfeld der E-Mail-Adresse entfernen, oder besser gesagt, die "Pflicht".

Ich habe die Zeile hier ausgeklammert:

Code:
if(!$_POST[email]){$fehler = $lang['failuremessage2'];}

Dann wird auch anscheinend nicht mehr geprüft. Danach wird aber nach der Gültigkeit (der nicht angegebenen) der E-Mail-Adresse geguckt. Wo kann ich das denn noch ausklammern?

Danke und Gruß
Zitieren
#2
Genau da liegt das Problem, das kannst Du nicht ausklammern. In Version 0.6 hab ich es so gemacht, dass man das leicht durch auskommentieren umgehen kann. In 0.5.x.x ist das aber noch zu umständlich. Da müßtest Du zuviel ändern.

Was Du da übrigens "ausgeklammert" hast, ist nur die Fehlermeldung, die dann nicht mehr angezeigt wird. Sonst nichts.
Zitieren
#3
Ok, alles klar.
Die 0.6-Version ist ja noch im Beta-Staduim, richtig?
Wann UNGEFÄHR wird sie denn "offiziell"?

Danke und Gruß
svdh
Zitieren
#4
Hallo Jürgen,

kannst Du mir nicht netterweise zeigen, wie ich das E-Mail-Pflichtfeld in der Version 0.5.4.7 entfernen kann?

Ich habe die Version schon so stark "beschnitten" und angepasst, dass ich mir die Arbeit mit der 0.6-Version nicht nochmal machen möchte...

Ich hab' auch schon überlegt, eine Variable irgendwie einzubauen, die da lauten würde
$email_dummy="asd@asd.de", die dann nur greift, wenn das E-Mail-Feld leer ist,...

aber irgendwie ist mein PHPisch nicht so gut... Weinen


Vielen Dank.

SVDH
Zitieren
#5
Ja vorübergehend wäre das schon eine Lösung. In der Version 0.6 ist es definitiv leichter Pflichtfelder zu entfernen, da die Überprüfung nicht in einer Klammerhierarchie untergebracht ist, sondern für jedes Feld einzeln erfolgt. Dort reicht es also dann die entsprechende Überprüfung auszuklammern.

Aber hier ist das nicht so einfach. Da hab' ich nicht mitgedacht. Sorry. Also erstens ... aktualisier mal auf die 0.5.4.8. Die aktuelle Version. Kein Datenbankupdate notwendig, einfach alle Dateien außer config.php überschreiben.

Dann kannst Du das machen was Du vor hattest. Dem Gästebuch vorgaukeln dass eine eMail Adresse eingegeben wurde. Am besten fügst Du das in der eintragen.php nach Zeile 179 ein:

Code:
if($_POST[email] == "")
    {
    $_POST[email] = "asd@asd.de";
    }

Dann musst Du nur noch den Stern aus Zeile 54 der eintragen_form.php entfernen

Code:
$ausgabe.="<font>*</font>\n";

und fertig.
Zitieren
#6
ahja, ok. vielen Dank für die schnelle Antwort.
Werde das mal testen und wenn ich mich nicht mehr melde, hat's geklappt LOL

Danke und Gruß
SVDH
Zitieren
#7
Moin Jürgen,

habe, wie erwähnt, den folgenden Abschnitt

Code:
177    else
178        {
179        if(check_mail($_POST[email]))
180                     {

um Deine Zeilen erweitert:

Code:
177    else
178        {
179            if($_POST[email] == "")
180                  {
181                  $_POST[email] = "asd@asd.de";
182                  }
183        if(check_mail($_POST[email]))
184                     {

Aber die Meldung kommt immer noch ("Geben Sie eine gültige E-Mail-Adresse ein"..)

Was mache ich falsch?

Danke und Gruß
SVDH
Zitieren
#8
Ups... ich habe mich in der Zeile vertan. Du musst den Code in Zeile 148 einfügen. Dann funktioniert's ... sorry!
Zitieren
#9
Ok, alles klar, jetzt gehts auch.
Vielen Dank ! Lachen
Zitieren
#10
Hi, ich würde gerne noch einen Schritt weitergehen

und bei der Ausgabe der GB-Einträge einen entsprechenden Filter setzen. Also frei nach dem Motto

Code:
if($_POST[email] == "asd@asd.de")

dann NICHT den emaillink anzeigen. Sonst denken die User ja, sie würden Mails an denjenigen schicken, der den Eintrag gemacht hat, schicken aber in Wirklichkeit halt an <!-- e --><a href="mailto:asd@asd.de">mailto:asd@asd.de</a><!-- e -->

Hat dazu einer eine Idee?

Thx, 2-frozen
Zitieren
#11
2-frozen schrieb:Hi, ich würde gerne noch einen Schritt weitergehen

und bei der Ausgabe der GB-Einträge einen entsprechenden Filter setzen. Also frei nach dem Motto

Code:
if($_POST[email] == "asd@asd.de")

dann NICHT den emaillink anzeigen. Sonst denken die User ja, sie würden Mails an denjenigen schicken, der den Eintrag gemacht hat, schicken aber in Wirklichkeit halt an <!-- e --><a href="mailto:asd@asd.de">asd@asd.de</a><!-- e -->

Hat dazu einer eine Idee?

Thx, 2-frozen

Ja stimmt, da hast Du recht. Ich habe das so gelöst, dass das E-Mail-Feld bei den Einträgen einfach nicht vorhanden ist 8)

Aber sicherlich kann man bei der Ausgabe eine Abfrage einbauen, die überprüft, ob es eine Standard-E-Mail ist, die eingegeben wurde (oder besser gesagt, dass KEINE eingegeben wurde) und dann auch das E-Mail-Feld nicht anzeigt...
Zitieren
#12
Wie kann ich bei der 0.6 Beta-2 Version das E-Mail Pflichtfeld entfernen?
Zitieren
#13
svdh schrieb:Ja stimmt, da hast Du recht. Ich habe das so gelöst, dass das E-Mail-Feld bei den Einträgen einfach nicht vorhanden ist 8)

Aber sicherlich kann man bei der Ausgabe eine Abfrage einbauen, die überprüft, ob es eine Standard-E-Mail ist, die eingegeben wurde (oder besser gesagt, dass KEINE eingegeben wurde) und dann auch das E-Mail-Feld nicht anzeigt...

OK, danke ... hab mir jetzt auf die schnelle auch erstmal so beholfen und werde meine Wunschvariante vermutlich am WE mal austesten und den Code (sofern ich das denn hinbekomme) zur verfügung stellen Lachen

Thx, 2-frozen
Zitieren
#14
Hallo danke für die antwort kenne mich nicht so gut aus wie krieg ich denn das email feld raus aber eiglich wollt ich schon das die leute auf meine seite kommen ne möglichkeit haben ihre email zu hinterlassen
Zitieren
#15
pitbull2027 schrieb:Hallo danke für die antwort kenne mich nicht so gut aus wie krieg ich denn das email feld raus aber eiglich wollt ich schon das die leute auf meine seite kommen ne möglichkeit haben ihre email zu hinterlassen

Öffne die "newentry.php" und ändere folgendes:

Zeile 91:
Code:
if (!check_mail($_POST['email'])) { $errorcode = 4; }
zu:
Code:
//if (!check_mail($_POST['email'])) { $errorcode = 4; }
Zeile 99:
Code:
if (!$_POST['email']) { $errorcode = 2; }
zu:
Code:
//if (!$_POST['email']) { $errorcode = 2; }

Somit wird die Überprüfung umgangen. Jetzt musst Du im Template noch den Stern hinter dem Feld entfernen:

Öffne "templates/mgbModern/main/newentry_body.tpl"

Zeile 49:
Code:
<span>*</span>
zu:
Code:
<span>&nbsp;</span>

Fertig. Dann hast Du aber das Problem dass Du bei der Freischaltung im Admin Menü eine Fehlermeldung bekommen wirst, und auch wenn jemand versucht eine eMail an diesen Benutzer zu schicken. Dazu müsstest Du dann das eMail Symbol bei einem Eintrag bei dem keine eMail hinterlassen wurde, nicht anzeigen lassen. Das würde aber schon zu weit gehen ... Denn eigentlich gibt es für die Beta der neuen Version gar keinen Support. Das hab ich nur gemacht, da es hier um einiges leichter zu lösen ist, als in der 0.5.x.x.
Zitieren


Gehe zu:


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