Javascript 管理员登录加载()SMARTY can';我得不到职位

Javascript 管理员登录加载()SMARTY can';我得不到职位,javascript,php,jquery,html,smarty,Javascript,Php,Jquery,Html,Smarty,首先,我必须使用PHP4和SMARTY2。是的,我知道这很糟糕:-/但我们无法升级,因为现有系统需要该环境…:@ 我想用jquery的load和php编写一个管理员登录代码。 smarty的tpl系统有三个部分的登录原因:smarty登录(使用php和tpl)、忘记的php和另一个登录php。我只能用jquery加载php:而不是tpl和php 第一次登录包含在我们的frame.tpl中 另外2个只能与php和html组合使用,因为加载()的原因 我无法从combinatet php获得帖子

首先,我必须使用PHP4和SMARTY2。是的,我知道这很糟糕:-/但我们无法升级,因为现有系统需要该环境…:@

我想用jquery的load和php编写一个管理员登录代码。 smarty的tpl系统有三个部分的登录原因:smarty登录(使用php和tpl)、忘记的php和另一个登录php。我只能用jquery加载php而不是tpl和php

  • 第一次登录包含在我们的frame.tpl中
  • 另外2个只能与php和html组合使用,因为加载()的原因
我无法从combinatet php获得帖子,请告诉我如何使用它

因此,这里的代码包括login.tpl

<div id='rightcolumn'> 
  <div class='admin'> 
    <h3>ADMINISTRATOR</h3>  
    {include file='login.tpl'}  
  </div>

管理员
{include file='login.tpl'}
登录.tpl

<form method="POST">

            {literal}
                <script type="text/javascript"> 
                    $(document).ready(function(){
                        $("#load").click(function(){
                            $("#dynamic").load("././content/pw_lost.php");
                            return false;
                        });
                    });
                </script>
            {/literal}

            <br />
            <div id="dynamic">
                <!--[if IE]>
                Pers.Nr.:
                <br /><input type="text" name="persnr" style="width:150px;" value="Pers.Nr." 
                onfocus="if(this.value==this.defaultValue)this.value='';" 
                onblur="if(this.value=='')this.value=this.defaultValue;"/>
                <br />
                <br />
                Passwort:
                <br /><input type="password" name="password" style="width:150px;" value="***********" 
                onfocus="if(this.value==this.defaultValue)this.value='';" 
                onblur="if(this.value=='')this.value=this.defaultValue;"/>
                <br />
                <br /><input type="submit" name="login" value="anmelden" />
                <![endif]-->

                <!--[if !IE]> -->
                <fieldset id="inputs" class="field_login">
                        <input id="persnr" name="persnr" type="text" placeholder="Pers.Nr.">
                        <input id="password" name="password" type="password" placeholder="Password">
                </fieldset>
                <br />
                <button type="submit" name="login" value="anmelden" class="myButton">Anmelden</button>
                <br />
                <!--<![endif]-->


                <br />
                <br /><div id="load"><a href="" class="loadlink">Passwort vergessen?</a></div>
                <br />
                <br />
            </div>


</form>

{literal}
$(文档).ready(函数(){
$(“#加载”)。单击(函数(){
$(“#dynamic”).load(“././content/pw#u lost.php”);
返回false;
});
});
{/literal}


户口




这里是遗忘的php: 这里的问题是我不能使用php块(如果我不使用第一个if(isset()),我会得到一个空白页面…如果我提交了整个页面,则会重新加载,并且没有得到任何帖子

<?php

if(isset($_POST['persnr'])) {

        if (empty($_POST['persnr'])) {

            $SMARTY->assign('message', 'Bitte f&uuml;llen Sie alle Felder aus.');


        } else {

            $TMP_PERSNR = strtolower($DB->escape($_POST['persnr']));

            $query = "SELECT * FROM TAB_MITARBEITER WHERE lower(NPERSNR)='$TMP_PERSNR'";

            $res = $DB->query($query, TRUE);
            unset($query);

            if ($res) {

                // also wenn es den Mitarbeiter gibt

                $pool = "qwertzupasdfghkyxcvbnm";
                $pool .= "23456789";
                $pool .= "WERTZUPLKJHGFDSAYXCVBNM";

                srand ((double)microtime()*1000000);
                for($index = 0; $index < 8; $index++) {
                    $newpassword .= substr($pool,(rand()%(strlen ($pool))), 1);
                }


                $Name = "SAZ Support"; //senders name 
                $email = $res[0]['VCMAIL']; //senders e-mail adress 
                $recipient = $res[0]['VCMAIL']; //recipient 
                $subject = "SAZ - neues Passwort"; //subject 
                $header = "From: ". $Name . " <" . ">\r\n"; //optional headerfields 


                $mail_body  = ucfirst(strtolower($res[0]['VCNAME'])) ." ". ucfirst(strtolower($res[0]['VCVORNAME'])) . ",\n\n"; 


                $mail_body .= "gerne möchten wir Ihnen ein neues Passwort zusenden. Ihr neues Passwort lautet: $newpassword\n\n"; 

                $mail_body .= "Sie können Ihr Passwort jederzeit unter 'Einstellungen' in der SAZ ändern.\n\n";

                $mail_body .= "Wenn Sie kein neues Passwort angefordert haben und Sie glauben, dass es sich um Missbrauch der Funktion handelt, dann wenden Sie sich bitte mit dieser E-Mail an die Systemadministration.\n\n"; 

                $mail_body .= "Mit freundlichen Grüßen\n\n";

                $mail_body .= "Ihr SAZ Support\n\n"; 

                $mail_body .= "\n"; 
                $mail_body .= "Abfrage von folgender Maschine gestartet: {$_SERVER['REMOTE_ADDR']}\n\n"; 


                // change pw:

                $newpassword = md5($newpassword);

                $query = "UPDATE TAB_MITARBEITER SET VCPASSWORT='$newpassword' WHERE lower(NPERSNR)='$TMP_PERSNR'";

                $res = $DB->query($query, FALSE);
                unset($query);


                if (mail($recipient, $subject, $mail_body, $header) === TRUE) {

                    $SMARTY->assign('message', 'Passwort zugesendet.');


                }               




            } else {
                $SMARTY->assign('message', 'Fehler. Mitarbeiter nicht gefunden.');
            }           

        }

    }
?>


//HTML starts

<form method="POST">

                <script type="text/javascript"> 
                    $(document).ready(function(){
                        $("#load").click(function(){
                            $("#dynamic").load("././content/2_login.php");
                            return false;
                        });
                    });
                </script>

    <div id='dynamic'>
    <div id='justify'>

    Wenn Sie ihr Passwort vergessen haben, oder Sie noch kein Passwort vergeben haben, dann geben Sie hier bitte Ihre Personalnummer ein und wir senden ihnen per Email umgehend ein (neues) Passwort zu (sofern ein Benutzer für Sie bereits angelegt wurde).<br /><br />
    </div>

    Pers.Nr:
    <br />
    <input type="text" name="persnr">
    <br />
    <br />
    <input type="submit" name="lostpw" value="Passwort anfordern" />
    <br />
    <br />
    <div id="load"><a href="" class="loadlink">Ich m&ouml;chte mich einloggen.</a></div>
    </div>

</form>