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

    Система за картички по email

    Автор: Harry_Potter_

    В този урок ще ви покажа как можете да си направите система за картички като тази на kefche.com например.Като за начало трябва да създадем таблицата в която ще пишем информацията за картичките.Просто напишете следния код във phpmyadmin и готово:

    CREATE TABLE `images` (
    `id` mediumint(8) NOT NULL auto_increment,
    `name` varchar(200) collate cp1251_bulgarian_ci NOT NULL default '',
    `imageurl` varchar(200) collate cp1251_bulgarian_ci NOT NULL default '',
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 COLLATE=cp1251_bulgarian_ci AUTO_INCREMENT=1 ;

    След като сме създали таблицата ни трябва да създадем и файл с конфигурацията където ще напишем информацията за свързване с базата данни.Нека наречем файла config.php.Това фактически е единствения файл по който ще трябва да редактирате нещо.В него напишете следното:

    <?php
    //редактирайте отдолу:
    $server = "localhost"; //сървър на базата данни
    $dbuser = "dbuser"; //потребител за базата данни
    $dbpass = "dbpass"; //парола за потребителя за базата данни.Ако няма парола оставяш празно между кавичките
    $dbname = "dbname"; //самата база данни в която е таблицата с картичките
    //не пипайте нищо отдолу!!!
    $connection = mysql_connect($server, $dbuser, $dbpass) or die("Сайтът не може да се свърже към базата данни");
    $db = @mysql_select_db($dbname,$connection)or die("Сайтът не може да се свърже към базата данни");
    ?>

    Вече имаме основните неща сега е време да започнем реалната част.Първо ще ни трябва файл за добавяне на картички.Нека го наречем add.php.В него напишете следния код:

    <html>
    <head>
    <title>Добавяне на картичка</title>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    </head>
    <body>
    <form action="dobavi.php" method="POST">
    Име на картичката:<input type="text" name="name"><br>
    Адрес на картичката:<input type="text" name="url"><br>
    <input type="submit" name="submit" value="Добави">
    </form>

    След като сме създали формата за добавяне е ред и на частта която вече ще направи добавянето факт.Както виждате този файл трябва да се казва dobavi.php.В него ще трябва да напишете следния код:

    <html>
    <head>
    <title>Списък с картички</title>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    </head>
    <body>
    <?php
    $name = $_POST['name'];
    $url = $_POST['url'];
    include("config.php");
    $sql ="INSERT INTO images VALUES
    ('', '$name', '$url')";
    $queryresult = mysql_query ($sql)
    or die ("Не може да се изпълни заявката");
    if(!$queryresult){
    echo "Станала е грешка.Моля върнете се и опитайте отново";
    }
    else{
    echo "Картичката бе добавена успешно";
    }
    ?>
    </body>
    </html>

    Частта за добавяне е готова.Сега е време и на частта която ще дава възможност за преглед и изпращане на картичките.Първо ще ни трябва файл който ще преглежда картичките.Може да го наречем list.php.В него ще трябва да напишете следното:

    <html>
    <head>
    <title>Списък с картички</title>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    </head>
    <body>
    <center>Списък с картичките</center>
    <table width="100%" border="0">
    <tr>
    <?php
    include("config.php");
    $sql = "SELECT * FROM images";
    $result = @mysql_query($sql,$connection) or die(mysql_error());
    while($row = mysql_fetch_array($result)){
    echo "<td><a href=\"view.php?id=$row[id]\"><img src=\"$row[imageurl]\" alt=\"$row[name]\" border=\"0\"></a><BR>$row[name]</td>";
    }?>
    </tr>
    </table>
    </body>
    </html>

    След като сме създали списъкът със всички картички ще ни трябва файла в който ще има форма за изпращане.Нека го наречем view.php:

    <html>
    <head>
    <title>Изпращане на картичка</title>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    </head>
    <body>
    <center><B>Изпращане на картичка</b><br><br>
    <?php
    $id = $_GET['id'];
    if($id == ""){
    echo "<b>Не е избрана картичка</b>";
    exit;
    }
    else{
    include("config.php");
    $sql = "SELECT * FROM images WHERE id ='$id'";
    $result = @mysql_query($sql,$connection) or die(mysql_error());
    $row = mysql_fetch_array($result);
    
    echo "За да изпратите картичката попълнете следните полетта:<br>";
    echo "<img src=\"$row[imageurl]\"><br>";
    echo "<b>$row[name]</b><br>";
    echo "<form method=POST action=send.php>";
    echo "<input type=\"hidden\" name=\"id\" value=\"$id\">";
    echo "<b>Информация за подателя</b><br>";
    echo "Име: <input type=\"text\" name=\"sender-name\"><Br>";
    echo "e-mail: <input type=\"text\" name=\"sender-email\"><BR>";
    echo "<b>Информация за получателя/получателите</b><BR>";
    echo "e-mail(Използвайте запетая за разделител на e-mail адресите):<br> <input type=\"text\" name=\"recivers\"><BR>";
    echo "Текст:<br> <textarea cols=\"40\" rows=\"10\" name=\"message\"></textarea><br>";
    echo "<input type=\"submit\" name=\"send\" value=\"Изпрати\"></center>";
    echo "</form>";
    }
    ?>
    </body>
    </html>

    А сега вече и файлът който ще изпраща картичката.Тук ще трябва да направите една корекция по файла защото ще трябва да въведете адреса на страницата за преглед на картичка.

    <html>
    <head>
    <title>Изпращане на картичка</title>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    </head>
    <body>
    <?php
    $id = $_POST['id'];
    $sendername = $_POST['sender-name'];
    $senderemail = $_POST['sender-email'];
    $recivers = $_POST['recivers'];
    $message = $_POST['message'];
    //част за редактиране:
    $mailsubject = "Картичка от твой приятел"; //можеш да промениш темата на писмото на каквато си искаш//
    $siteurl = "http://www.saitati.com/view.php?id=$id"; //тук пишеш адреса на сайта и по-точно страницата откъдето се изпраща картичката.Важното е частта ?id=$id да остане
    //оттук надолу не пипайте нещо!
    include("config.php");
    $sql = "SELECT * FROM images WHERE id = '$id'";
    $result = @mysql_query($sql,$connection) or die(mysql_error());
    
    while ($row = mysql_fetch_array($result))
    {
    $mailmessage = "<html><body>Здравей!Твоя приятел ти изпраща тази картичка.Картичката можеш да видиш тук:<br>
    <img src=\"$row[imageurl]\"><br> <b>$row[name]</b><br>
    Ако не можеш да видиш картичката влез в този сайт: $siteurl
    Ето и коментар на потребителя:$message</body></html>";
    $headers = "From: $sendername <$senderemail>\r\n".
    "MIME-Version: 1.0\r\n".
    "Content-type: text/html; charset=windows-1251\r\n";
    $sending = mail($recivers, $mailsubject, $mailmessage, $headers);
    if(!$sending){
    echo "Картичкта не бе изпратена успешно.Моля върнете се и опитайте отново";
    }
    else{
    echo "Картичката бе изпратена успешно.";
    }
    }?>

    С това урока приключи.Демо ще дам по нататък…Ако имате въпроси пишете в коментарите или по ЛС
    Урокът е лично мой.Забранено е преписването му в други сайтове!

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