Loading:


    Proste skrypty w php
    ------------------------------------------------------------------------------------------------------

     

    LOGOWANIE

     

    ------------------------------------------------------------------------------------------------------


    Wymagania:

     

    • Baza MySQL (v. 4.X)
    • Interpretator PHP (v 5.X) z serwerem Apache


    Struktura plików:

     

    1. ./
    2. index.php // Plik zawierający formularz logowania oraz pierwszą stronę po zalogowaniu, można umieścić tam np. przekierowanie do podstrony (zawiera klawiz wylogowywania).
    3. page.php // Podstrona (zawiera także klawisz wyloguj).
    4. register.php


    Opis (schemat):


    Wchodząc na stronę główną zauważymy formularz logowania, wpisując odpowiednio login i hasło zalogujemy się do serwisu. Panel klienta zawiera link do kolejnej podstrony (page.php), oraz wyloguj. Podstrona zawiera także możliwośc wylogowywania i przejścia do str. głw. Po wylogowywaniu zobaczymy ponownie str. index.php oraz komunikat.
    Jeżeli w bazie nie ma żadnego użytkownika trzeba go dodać poprzez plik register.php
    Wpisując dane tworzy nowy wiersz w bazie (nowego użytkownika). Baza ma 3 kolumny: 'id' 'login' 'haslo'

    Skrypt (baza):



    W PHPMyAdmin po wybraniu dostępnej bazy (na niektórych hostingach otrzymujesz jedną bazę) wpisujemy do wiersza poleceń:

    KOD
    CREATE TABLE `users` (
    `user_id` INT NOT NULL AUTO_INCREMENT ,
    `user_login` VARCHAR( 30 ),
    `user_haslo` VARCHAR( 30 ),
    PRIMARY KEY ( `user_id` )
    );



    Można to także zrobić ręcznie za pomocą kreatora tablic tworząc nową tablicę 'users'. Będziesz potrzebował/ła 3-kolumn odpowiednio 'user_id' 'user_login' 'user_haslo'. Ustawiamy dla user_id opcje AI (auto icrement) typ: liczbowy oraz opcję Not null. Dla user_login i user_haslo tylko wartość varchar 30. Klucz główny powinen samemu się zrobić dla user_id

    Skrypt (kod):



    Plik rejestracyjny(register.php):
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    KOD
    <?php
    mysql_connect("SERWER DLA DB", "UZYTKOWNIK DB]", "HASLO DB")or die("Nie można nawiązać połączenia z bazą"); //połączenie z bazą danych
    mysql_select_db("NAZWA BAZY DANYCH")or die("Wystąpił błąd podczas wybierania bazy danych");

    function ShowForm($komunikat=""){    //funkcja wyświetlająca formularz rejestracyjny
        echo "$komunikat<br>";
        echo "<form action='rejestruj.php' method=post>";
        echo "Login: <input type=text name=login><br>";
        echo "Hasło: <input type=password name=haslo><br>";
        echo "<input type=hidden value='1' name=send>";
        echo "<input type=submit value='Zarejestruj mnie'>";
        echo "</form>";
    }
    ?>
    <!DOCTYPE html
        PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
    <head>
        <title>Formularz rejestracyjny</title>
    </head>
    <body>
    <?php
    if($_POST["send"]==1){    //sprawdzanie czy formularz został wysłany
        if(!empty($_POST["login"]) && !empty($_POST["haslo"])){    //oraz czy uzupełniono wszystkie dane
            if(mysql_num_rows(mysql_query("select * from users where user_login='".htmlspecialchars($_POST["login"]."'"))))ShowForm("Użytkownik o podanym loginie już istnieje!!!"); // sprawdzanie czy użytkownik o podanej nazwie już istnieje
            else{
                mysql_query("insert into users values(NULL, '".htmlspecialchars($_POST["login"])."', '".htmlspecialchars($_POST["haslo"])."')"); // zapisywanie rekordu do bazy
                echo "Rejestracja przebiegła pomyślnie. Możesz teraz przejść do <a href='index.php'>Strony głównej</a> i się zalogować.";
                }
        }
        else ShowForm("Nie uzupełniono wszystkich pól!!!");
    }
    else ShowForm();
    mysql_close(); //zamykanie połączenia z bazą
    ?>
    </body>
    </html>



    Strona główna(index.php):
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    KOD
    <?php
    session_start();
    session_register("zalogowany");

    if(empty($_SESSION["zalogowany"]))$_SESSION["zalogowany"]=0;

    mysql_connect("SERWER DB", "UZYTKOWNIK DB", "HASLO DB")or die("Nie można nawiązać połączenia z bazą");
    mysql_select_db("NAZWA DB")or die("Wystąpił błąd podczas wybierania bazy danych");

    function ShowLogin($komunikat=""){
        echo "$komunikat<br>";
        echo "<form action='index.php' method=post>";
        echo "Login: <input type=text name=login><br>";
        echo "Hasło: <input type=password name=haslo><br>";
        echo "<input type=submit value='Zaloguj!'>";
        echo "</form>";
        echo "Jeśli nie jesteś zarejestrowany, <a href='rejestruj.php'>tu znajdziesz formularz</a>";
    }

    ?>
    <!DOCTYPE html
        PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
    <head>
        <title>Strona główna</title>
    </head>
    <body>
    <?php
    if($_GET["wyloguj"]=="tak"){$_SESSION["zalogowany"]=0;echo "Zostałeś wylogowany z serwisu";}
    if($_SESSION["zalogowany"]!=1){
        if(!empty($_POST["login"]) && !empty($_POST["haslo"])){
            if(mysql_num_rows(mysql_query("select * from users where user_login = '".htmlspecialchars($_POST["login"])."' AND user_haslo = '".htmlspecialchars($_POST["haslo"])."'"))){
                echo "Zalogowano poprawnie. <a href='index.php'>Przejdź na stronę główną</a>";
                $_SESSION["zalogowany"]=1;
                }
            else echo ShowLogin("Podano złe dane!!!");
            }
        else ShowLogin();
    }
    else{
    ?>
    Gratulacje! Zalogowałeś się pomyślnie! Możesz przejśc teraz do innych podstron, np. do <a href="./page.php">tej</a>
    <br><a href='index.php?wyloguj=tak'>wyloguj się</a>
    <?php
    }
    ?>

    </body>
    </html>
    <?php mysql_close(); ?>




    Podstrona (page.php):
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    KOD
    <?php
    session_start();
    ?>
    <!DOCTYPE html
        PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
    <head>
        <title>podstrona</title>
    </head>
    <body>
    <?php
    if($_SESSION["zalogowany"]==0){echo "nie masz dostępu do tej części witryny. <a href='index.php'>Zaloguj się</a></body></html>;"; exit();}
    ?>

     

    ------------------------------------------------------------------------------------------------------

     

    FORM 2 (E) MAIL

     

    ------------------------------------------------------------------------------------------------------


    Struktura:


    Jeden plik zawierający kod obsługujący formularz.

    Opis:


    Formularz tekstowy mający wysyłać wiadomość e-mail z strony na twoją skrzynkę. Przedstawiony skrypt jest bardzo prosty, więc dane będą grupowane standardowo tagami, a wysyłana wiadomość posiada nazwę adresata taką jaka podałeś/aś w kodzie.

    Skrypt (kod):




    Czysty formularz (form.php):
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    KOD
    <form action="skrypt.php" method="post">
    <input type="text" name="email" /><br />
    <textarea name="content" cols="30" rows="6"></textarea>
    <input type="submit" value="wyślij" />
    </form>



    Kawałek obsługujący formularz(form.php):
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    KOD
    <?php
        $adresat = 'adres@serwer.pl';     // pod ten adres zostanie wysłana wiadomosc
        @$email = $_POST['email'];
        @$content = $_POST['content'];
        $header =     "From: ADRES@MAIL.PL \nContent-Type:". // adresat wiadomosci
                ' text/plain;charset="iso-8859-2"'.
                "\nContent-Transfer-Encoding: 8bit";
        if (mail($adresat, 'List ze strony', $content, $header))
            echo '<p>Wysłano poprawnie e-mail</p>';
        else
            echo '<p><b>ERROR</b></p><p>Nie wysłano maila!</p>';
    ?>



    Myślę, że nie jest to chaotycznie przedstawione i nie będzie problemów z użytkowaniem. Czcionka pisana kapitalikami w kodzie ma na celu wyróżnienie tekstu którego trzeba odpowiednio zmienić do własnych danych smile.gif Miłego korzystania i modyfikowania.

    Pozdrawiam. wink.gif



    Napisz Artyku³

    Listing

    niema




    Dodano przez: bidziu890 Ranga: 0 Punktów: 0
    Komentarze użytkowników
    wszystko dziala jak nalezy dzieki
    autor: gokis | 12657 | 2011-11-12 20:08:28


      • Tre¶æ komentarza
        Kod do komentarza (opcjonalnie)
        PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
        Autor
        Token
        token

         

         








    funkcje.net
    Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-2025 v.1.5 | design: diviXdesign & rainbowcolors