MyBB.de Forum
Einverständniserklärung Ablehnen-Button - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html)
+--- Forum: Theme-Diskussionen (https://www.mybb.de/forum/forum-84.html)
+--- Thema: Einverständniserklärung Ablehnen-Button (/thread-7959.html)

Seiten: Seiten: 1 2 3


RE: Einverständniserklärung Ablehnen-Button - Dave - 09.12.2007

Dave schrieb:Zusätzlich musst du dann noch
Code:
<form action="member.php" method="post">

mit
Code:
<form action="member.php" method="post" name="agreement">
ersetzen.
Beides natürlich im Template member_register_agreement

Habt ihr auch diesen Schritt gemacht?


RE: Einverständniserklärung Ablehnen-Button - Murphy - 09.12.2007

Dave schrieb:
Dave schrieb:Zusätzlich musst du dann noch
Code:
<form action="member.php" method="post">

mit
Code:
<form action="member.php" method="post" name="agreement">
ersetzen.
Beides natürlich im Template member_register_agreement

Habt ihr auch diesen Schritt gemacht?

Klappt trotzdem nicht.
Die Zeit läuft einfach nicht runter.


RE: Einverständniserklärung Ablehnen-Button - Dave - 09.12.2007

Tut mir leid, aber ich habe keine Ahnung von javaScript, ich habe einfach den Code entsprechend angepasst, daher kann ich euch hierbei nicht weiterhelfen.


RE: Einverständniserklärung Ablehnen-Button - linwinman - 10.12.2007

Hallo,

die o. a. Änderungen habe ich durchgführt.

In Template "member_register_agreement":
Code:
<div align="center"><input type="hidden" name="action" value="register" />
<input type="submit" class="button" name="agree" value="{$lang->i_agree}" />
<input type="submit" class="button" name="agree" value="{$lang->i_disagree}" />
In "/member.php":
PHP-Code:
...
    if((!isset(
$mybb->input['agree']) && !isset($mybb->input['regsubmit'])) || $mybb->request_method != "post")
    {
        
$plugins->run_hooks("member_register_agreement");

        eval(
"\$agreement = \"".$templates->get("member_register_agreement")."\";");
        
output_page($agreement);
    }
    
//Start - "Ablehnen"
    
elseif($mybb->input['agree']="Ich lehne ab")
    {
        
redirect("index.php");
    }
    
//Ende - "Ablehnen"
... 
In ".../inc/languages/deutsch_du/member.lang.php":
PHP-Code:
$l['i_disagree'] = "Ich lehne ab"

Nur leider wird mit diesen Anpassungen der Gast über beide Buttons auf die Startseite zurückgeleitet.

Was ist an den Anpassungen noch falsch?

Danke für die Hilfe.


RE: Einverständniserklärung Ablehnen-Button - linwinman - 15.12.2007

Hallo,

hat vllt. jemand einen Lösungsansatz zu meinem letzten Beitrag? Sad

Der Fehler tritt sowohl in MyBB 1.2.9 als auch in MyBB 1.2.10 mit dem gleichen Effekt auf.

Danke für die Hilfe.


RE: Einverständniserklärung Ablehnen-Button - Michael - 15.12.2007

Wo kommt $mybb->input['regsubmit'] her? Das Problem ist, dass beide Buttons bei dir den Namen "agree" haben. Damit wird bei beiden dieser Code ausgeführt:
PHP-Code:
elseif($mybb->input['agree']="Ich lehne ab")
{
    
redirect("index.php");

Am einfachsten wäre es die Buttons unterschiedlich zu benennen.


RE: Einverständniserklärung Ablehnen-Button - linwinman - 16.12.2007

Danke für den Hinweis.

Nachdem ich die folgenden Änderungen im Template "member_register_agreement"
Code:
<div align="center"><input type="hidden" name="action" value="register" />
<input type="submit" class="button" name="agree" value="{$lang->i_agree}" />
<input type="submit" class="button" name="disagree" value="{$lang->i_disagree}" />
und in der Datei "/member.php" (Zeile 266 ff)
PHP-Code:
...
    if((!isset(
$mybb->input['agree']) && !isset($mybb->input['regsubmit'])) || $mybb->request_method != "post")
    {
        
$plugins->run_hooks("member_register_agreement");

        eval(
"\$agreement = \"".$templates->get("member_register_agreement")."\";");
        
output_page($agreement);
    }
    
//Start - Ergänzung "Ablehnen"
    
elseif($mybb->input['disagree'])
    {
        
redirect("index.php");
    }                                        
    
// Ende - Ergänzung "Ablehnen"
... 
vorgenommen habe, wird der Gast bei "Zustimmung" auf die Registrierung weitergeleitet.
Andererseits wird der Gast bei "Ablehnung" nicht auf die Startseite weitergeleitet, sondern es wird erneut die Seite "Einverständniserklärung" aufgebaut.

Was, bitte, ist hieran noch falsch?

Danke für die Hilfe.


RE: Einverständniserklärung Ablehnen-Button - Michael - 16.12.2007

Warum so kompliziert? Versuche es mal damit:
PHP-Code:
if($mybb->input['agree'] && $mybb->request_method == "post") {
    
// Benutzer hat zugestimmt
} else {
    
// Benutzer hat nicht zugestimmt




RE: Einverständniserklärung Ablehnen-Button - Dave - 16.12.2007

Das funktioniert nicht, weil danach noch ein else kommt. Aber es muss doch auch eine Erklärung dafür geben, dass der User nicht planmäßig weitergeleitet wird.


RE: Einverständniserklärung Ablehnen-Button - linwinman - 17.12.2007

Mein "Problem" ist gelöst.

Nach Änderung der "if-Anweisung" in der Datei "/member.php" (Zeile 267 ff) in:
PHP-Code:
...
    if(
$mybb->input['disagree']) //Start - "Ablehnen"
    
{
        
redirect("index.php");
    }                            
// Ende - "Ablehnen"
    
elseif((!isset($mybb->input['agree']) && !isset($mybb->input['regsubmit'])) || $mybb->request_method != "post")
    {
        
$plugins->run_hooks("member_register_agreement");

        eval(
"\$agreement = \"".$templates->get("member_register_agreement")."\";");
        
output_page($agreement);
    }
... 
ist der Ablauf korrekt :question: Exclamation

Zum Abschluss - für mich zum Verständnis - habe ich noch eine Frage an die "php-Profis" unter euch:
>> ist das (funktionell) auch ok oder einfach nur Zufall, dass es auf diese Weise funktioniert?

Danke für die Hilfe und...