Webmaster общности: Predpriemach.com | SearchEngines.bg

    Системка за изпращане на ЛС + Лог

    Автор: jorkata_1354

    Значи тва не е кой знай ква яка „системка“ ако изобщо мога да я нарека така. Значи състой се от 5 файла – login, config, mesage, box и logout. Дано на някои да му помогне малко поне 🙂

    Тва е само пример вии мое си я модифицирате или квото щете

    еми да започнем с базата дани

    SQL.SQL

    CREATE TABLE `mesage` (
    `id` int(11) NOT NULL auto_increment,
    `ot` varchar(30) collate latin1_general_ci NOT NULL,
    `do` varchar(30) collate latin1_general_ci NOT NULL,
    `tema` varchar(250) collate latin1_general_ci NOT NULL,
    `opisanie` text collate latin1_general_ci NOT NULL,
    `procheten` varchar(30) collate latin1_general_ci NOT NULL default 'ne',
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=12 ;
    
    CREATE TABLE `users` (
    `id` int(11) NOT NULL auto_increment,
    `username` varchar(30) collate latin1_general_ci NOT NULL default '',
    `password` varchar(30) collate latin1_general_ci NOT NULL default '',
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=3 ;
    
    INSERT INTO `users` (`id`, `username`, `password`) VALUES
    (1, 'demo', 'demo'),
    (2, 'demo2', 'demo2');

    config.php

    <?php
    # Настройка
    $db_host = "localhost";
    $db_user = " ";
    $db_pass = " ";
    $db_name = " ";
    # Свързване с БД
    $connect = mysql_connect($db_host, $db_user, $db_pass) or die ("Не мога да се свържа със Сървъра");
    mysql_select_db($db_name) or die ("Не мога да се свържа с Базата Дани");
    $log = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE id='$_COOKIE[id]' AND password='$_COOKIE[password]'"));
    ?>

    login.php

    <?php
    
    include "config.php";
    
    if (!$log['username']) {
    
    if (isset($_POST['login'])) {
    
    $username = $_POST['username'];
    $password = $_POST['password'];
    
    $data = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE username = '$username'")); # Срързва се с БД и ...
    if ($data['password'] != $password) { #..... Проверява дали въведента парола е вярна ....
    echo "Грешен Пасс или Потребител <meta http-equiv=\"Refresh\" content=\"1; URL=mesage.php\"/>"; # .... И ако не е вярна извежда това
    } else {
    $info = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE username = '$username'"));
    setcookie("id", $info['id'],time()+(60*60*24*5), "/", ""); # Ако парота е варна се изпълнява това
    setcookie("password", $info['password'],time()+(60*60*24*5), "/", ""); # ---//----
    echo "Влязохте <meta http-equiv=\"Refresh\" content=\"1; URL=login.php\"/>"; # Ако всичко е ОК излиза това
    }
    
    } else {
    
    # Форма за Влизане
    echo "<center>
    <form method='post'>
    Потребител:<br><input type='text' name='username'><br>
    Парола:<br><input type='password' name='password'><br>
    <input type='submit' name='login' value='Влез'>
    </form></center>";
    
    }
    
    }
    
    else {
    
    echo "<center><b>".$log['username']."</b></center>";
    echo "<a href='mesage.php'>Изпрати ЛС</a><br>";
    echo "<a href='box.php'>Вашите ЛС</a><br>";
    echo "<a href='logout.php'>Изход</a><br>";
    
    }
    
    ?>
    <meta http-equiv="Content-Type" content='text/html; charset=windows-1251' />

    mesage.php

    <?php
    
    include "config.php";
    
    if ($log['username']) {
    
    $query = mysql_query("SELECT * FROM users"); # Тук задавате таблицата с потребители
    while ($user = mysql_fetch_array($query)) {
    $users .= "<option value='".$user['username']."'>".$user['username']."</option>";
    }
    
    # Форма за изпращане
    echo "
    <form method='post'>
    До:<br><select name='do'>".$users."</select><br>
    Тема:<br><input type='text' name='tema'><br>
    Описание:<br><textarea rows='10' cols='45' name='opisanie'></textarea><br>
    <input type='submit' name='send' value='Изпрати'>
    </form>";
    
    if ($_POST['send']) {
    
    $ot = $log['username'];
    $do = $_POST['do'];
    $tema = $_POST['tema'];
    $opisanie = $_POST['opisanie'];
    
    $send = mysql_query("INSERT INTO mesage (id, ot, do, tema, opisanie) VALUES ('', '$ot', '$do', '$tema', '$opisanie')"); # Изпраща заявката до БД и я записва
    
    }
    
    }
    
    ?>
    <meta http-equiv="Content-Type" content='text/html; charset=windows-1251' />

    box.php

    <?php
    
    include "config.php";
    
    if ($log['username']) {
    
    $ls = mysql_query("SELECT * FROM mesage WHERE do = '$log[username]' AND procheten='ne'"); # Това ще извежда ЛС които не са били отворени или прочетени
    $lss = mysql_num_rows($ls); # Извежда броя на ЛС които не са прочетени или отворени
    
    $i=1; # брояч
    if ($i <= $lss) { # Ако непрочетените ЛС са повече от брояча =>
    echo "Имате ".$lss." нови Лс<br><br>"; # => Извежда това ($lss показва колко нови съоб. имате)
    } else {
    echo "Нямате нови ЛС<br><br>"; # Ако брояча е повече ... Извежда торва
    }
    
    if (!$_GET['box']) {
    
    $query = mysql_query("SELECT * FROM mesage WHERE do = '$log[username]'"); # Извежда тези съоб. до които са били изпратени
    while ($mesage = mysql_fetch_array($query)) {
    
    if ($mesage['procheteno'] == 'ne') {
    $mesag = "<b>".$mesage['tema']."</b>"; # Това ще извежда Съобщ. които не са прочетени в одебелен вид
    } else {
    $mesag = "".$mesage['tema'].""; # Това ще извежда Съобщ. след като са били отворени и ще бъдат в нормален вид
    }
    
    $in .= "
    <tr>
    <td class='table'><a href='box.php?box=".$mesage['id']."'>".$mesag."</a></td>
    <td class='table'>".$mesage['ot']."</td>
    </tr>";
    
    }
    
    echo "<table width='100%' align='center' cellspacing='0' cellpadding='0'>
    <tr>
    <td align='left' width='300' class='table'>Относно</td>
    <td align='left' class='table'>От</td>
    </tr>
    $in
    </table>";
    
    
    } else {
    
    $getbox = mysql_query("SELECT * FROM ".$db_prefix."mesage WHERE id = '".$_GET['box']."'");
    $boxx = mysql_fetch_array($getbox);
    
    echo "<table>
    <tr>
    <td>От:</td>
    <td align='center'>".$boxx['ot']."</td>
    </tr>
    
    <tr>
    <td>Тема:</td>
    <td align='center'>".$boxx['tema']."</td>
    </tr>
    
    <tr>
    <td>Описание:</td>
    <td align='center'>".$boxx['opisanie']."</td>
    </tr>
    
    <tr>
    <td><a href='box.php'><< Въдни се</a></td>
    </tr>
    </table>";
    
    $up = mysql_query("Update ".$db_prefix."mesage SET procheten = 'da' WHERE id = '$_GET[box]'"); # Когато се отвори дадено съобщ. ще се Ъпдейтне и вече няма да се смяда за ново съобщ.
    
    }
    
    }
    ?>
    <meta http-equiv="Content-Type" content='text/html; charset=windows-1251' />

    logout.php

    <?php
    
    setcookie("id", 3256,time()+(60*60*24*5), "/", "");
    setcookie("password", logout,time()+(60*60*24*5), "/", "");
    echo "Излязохте <meta http-equiv=\"Refresh\" content=\"1; URL=login.php\"/>";
    
    ?>

    Оставете коментар