Új hozzászólás Aktív témák

  • Soak

    veterán

    Nem tudom, hogy php baj-e, de itt teszem fel a kérdést. Frissen szerzett jQuery henkölési tudásommal ( :D ) . Beraktam ezt : [link] az oldalamra (nem így néz ki, de lényegtelen) . Azt szeretném elérni vele, hogy a bejelentkezési ablak szerepét vegye át bizonyos esetekben, magyarul, hogy a form ebben jelenjen meg. Tehát a sign_in.php linkjét az index.php-n kiváltja egy Sign In gomb . Berakom a php kódot ami lekezeli a formot a sign_in.php-ről .

    Így néz ki valahogy:

    <?php
    require_once("../_includes/initialize.php");

    if($session->is_logged_in()){
    redirect_to("logged_in/feed.php");
    }

    if (isset($_POST['submit'])) { // Form has been submitted.

    $e_mail = trim($_POST['e_mail']);
    $password = trim($_POST['password']);

    $found_user = User::authenticate($e_mail, $password);

    if ($found_user) {
    $session->login($found_user);
    log_action('Login', "{$found_user->username} logged in.");
    redirect_to("logged_in/feed.php");
    } else {
    $message = "Email/password combination incorrect.";
    }

    } else {
    $e_mail = "";
    $password = "";
    }

    ?>

    Ez tökéletesen működik a sing_in.php-n . Viszont ha beteszem a felugró ablakba a html formot ami így néz ki :

    <form action="sign_in.php" method="post">

    <input name="e_mail" id="email" type="email" class="roundDiv" accesskey="2" tabindex="10" value="<?php echo htmlentities($e_mail); ?>">
    <input name="password" type="password" id="password" class="roundDiv" tabindex="20" value="<?php echo htmlentities($password); ?>">
    <<input name="submit" type="submit" accesskey="4" tabindex="40" value="Login">

    </form>

    Csak a lényeg, hogy jól látható legyen. Ilyenkor úgy tűnik mintha a kommunikáció a form-al egy irányú lenne, méghozzá azért, mert ha a fenti php kódban az utolsó esetben (mikor még nem történt semmi, ezért a változóknak nincsenek értékei, hogy ne dobjon hibát) mondjuk az e_mail értéke test, akkor megjelenik a formon belül az email mezőben a test és az lesz a default érték nem pedig a semmi. Viszont kifelé már nem küldi ki az értékeket hiába kattintok a submitre.

    A hiba nem áll fent, ha ezt kiveszem a forráskódból : <div style="display: none;">
    , tehát alapból látható a div.

    Szerk : Valószínűleg ezzel menni fog : [link] , de attól még érdekel a megoldás tanulási célból.

Új hozzászólás Aktív témák