Отчет о стажировке на ГБОУ СПФ «Перевозский строительный колледж»

Автор работы: Пользователь скрыл имя, 07 Июня 2013 в 09:05, отчет по практике

Описание работы

Стажировка является одним из видов проведения преддипломной практики. Студенты проходят стажировку, в процессе которой выполняют функции и обязанности инженерно-технических работников среднего звена в различных подразделениях предприятия, собирают материал по программе подготовки к междисциплинарному экзамену.
Стажировка проводится с целью формирования профессиональных компетенций через закрепление знаний, полученных студентами в процессе обучения, и через приобретение практических навыков в решении конкретных профессиональных проблем.

Содержание работы

Введение 3
Основная часть 5
Общее описание организации 5
Структура подразделения. 8
Индивидуальное задание 11
Постановка задачи 11
Решение 11
Создание программы 12
Адресная книга 14
Отправить письмо 25
Синхронизация с MS Active Directory 29
Заключение 31
Библиография 33

Файлы: 1 файл

Otchetсетка.docx

— 230.09 Кб (Скачать файл)

        echo"<center><h2>Добавление пользователей в отдел</h2>";

        $_GET['user']=(int)$_GET['user'];

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

            mysql_query("DELETE FROM `polz-otd` WHERE `idotd`=$_GET[user]");

            foreach ($_POST['users'] as $key => $value) {

                if (mysql_query("INSERT into `polz-otd` (`idotd`,`idpolz`) VALUES( $_GET[user], '" . (int) $key . "')", $con)) {//запрос к БД добавляющий пользователей в отдел

                    echo "Пользователи добавлены!

                        <p><a href=\"index.php\" title=\"Вернуться в главное меню\">Главное меню</a></p>";

                } else {

                    echo mysql_error();

                }

            }

        }

        $res=  mysql_query("SELECT `idpolz` FROM `polz-otd` WHERE `idotd`=$_GET[user]");//Делаем запрос к БД

        $galki=array();

        while($row=  mysql_fetch_assoc($res))

            $galki[$row['idpolz']]=1;

        $res = mysql_query("SELECT * FROM `adress`", $con);

        while ($row = mysql_fetch_assoc($res)) {

            $check = isset($galki[$row['id']])?' checked="checked"':'';

            echo "<form action=\"\" method=\"post\">

                <table>

                <tr><td><input type=\"checkbox\" name=\"users[$row[id]]\" $check></td><td>$row[name]</td></tr>

                </table>

                ";//И выводим список пользователей  на экран

        }

        echo "<input type=\"submit\" name=\"otd\" value=\"Добавить\">

                </form>

                <p><a href=\"index.php\" title=\"Вернуться в главное меню\">Главное меню</a></p>";

    }

} else {

    ?><center>

        <p><h2>Адресная книга</h2></p>

    <p><h2>Работа с отделами</h2></p>

    <form action="" method="post">

        <p>Введите название отдела:</p>

        <p> <input type="text" name="name"></p>

        <p><input type="submit" name="add" value="Добавить"></p>

        <table border="1" cellpadding="5">

          

            <?php

            if (isset($_POST['add'])) {//если нажата кнопка Добавить

                $name = $_POST['name'];

                $res = mysql_query("SELECT *

                        FROM `otdel`

                        WHERE `name` LIKE '" . mysql_real_escape_string($name) . "'", $con);//выполняем соответсвующий запрос к базе данных, и добавляем запись

                if (mysql_num_rows($res) == 0) {

                    if (mysql_query("INSERT into `otdel` (`id`,`name`) VALUES(NULL, '" . mysql_real_escape_string($name) . "')", $con)) {

                        echo 'Отдел добавлен!';

                    } else {

                        echo mysql_error();

                    }

                } else {

                    echo 'Отдел уже существует!';

                }

            }

            $res = mysql_query("SELECT * FROM `otdel`", $con);//выводим содержимое таблицы БД, содержащую информацию об отделах

            echo mysql_error();

            while ($row = mysql_fetch_assoc($res)) {

                echo "<tr><td>$row[name]</td>

                <td><a href=\"?shag1=adr_book&shag2=otd&shag3=edit&user=$row[id]\" title=\"Изменить название отдела\">Изменить</a></td>

                <td><a href=\"?shag1=adr_book&shag2=otd&shag3=delete&user=$row[id]\" title=\"Удалить отдел. ВНИМАНИЕ! ОТМЕНА ОПЕРАЦИИ НЕВОЗМОЖНА! Пользователи, входящие в отдел не удалятся\">Удалить</a></td>

                <td><a href=\"?shag1=adr_book&shag2=otd&shag3=users&user=$row[id]\" title=\"Выбор пользователей, входящих в отдел\">Пользователи</a></td></tr>";

            }

            echo '</table>';

 

 

            echo "</form>

                 <p><a href=\"index.php\" title=\"Вернуться в главное меню\">Главное меню</a></p>";

        }

        ?>

Отправить письмо

Щелкнув по ссылке «Отправить письмо», вы попадаете  в меню создания и отправки письма(Рис. 10):

Рис. 10 Меню отправки письма

В этом меню появляется ссылка «все», которая позволяет  при отправке письма выбирать получателей  из общего списка. И ссылки с именами  созданных групп, которые соответственно позволяют выбирать получателей  из списка пользователей, входящих в  этот отдел. Как только вы выбрали, кто  будет получателями письма: отдел  или отдельные пользователи, вы попадаете  в меня создания письма(Рис. 11):

Рис. 11 Меню создания письма.

Здесь находятся  поля, в которые вводится информация необходимая для отправки письма. В поле «Введите текст письма»  находится набор символов. Этот набор  символов обеспечивает прибавление  к каждому письму Обращения по имени и отчеству.

Нажав кнопку «Отправить пользователям», вы отправляете  письмо выбранным пользователям.

Код данной страницы (файл otpr_pisma.inc.php):

<?

 

if (isset($_POST['go'])) {//нажата кнопка, отправка сообщения

    if (is_array($_POST['users']) && count($_POST['users'])) {

        $users = array();

        foreach ($_POST['users'] as $key => $on)

            if ($on == 'on')

                $users[] = (int) $key;

        //выбираем тех кому отправляем

        $sql = "SELECT * FROM `adress` WHERE `id` IN (" . implode(',', $users) . ")";

        $users = array();

        $res = mysql_query($sql);

        while ($row = mysql_fetch_assoc($res)) {

            $users[$row['email']] = $row['name'];

            $name[] = $row['name'];

        }

        if (count($users)) {

            $mymail = $_POST['mymail'];

            $pass = $_POST['mypass'];

            include 'email.php';

            foreach ($users as $email => $fio) {

                $mas = explode(' ', $fio);

                $_POST['text2'] = str_replace(array('$F$', '$I$', '$O$'), $mas, $_POST['text2']);

                //echo $_POST['text2'];

                email(array($email => $fio), $_POST['tema'], $_POST['text2']);

            }

            echo '<center>Ваше письмо отправлено!<p><a href=\"index.php\" title=\"Вернуться в главное меню\">Главное меню</a></p>';

        } else {

            echo '<center>Ошибка! Пользователи не найдены!<p><a href=\"index.php\" title=\"Вернуться в главное меню\">Главное меню</a></p>';

        }

    } else {

        echo '<center>Ошибка!<p><a href=\"index.php\" title=\"Вернуться в главное меню\">Главное меню</a></p>';

    }

} elseif (isset($_GET['otd'])) {//

    echo "<center><h2><p>Отправка Письма</h2><form action=\"\" method=\"post\">

    <h3><p>Введите данные для отправки письма:</p></h3>

    <p>e-mail:<br/>

            *<input type=\"text\" name=\"mymail\"></p>

<p>Пароль:<br/>

            *<input type=\"password\" name=\"mypass\"></p>

            <p>Введите тему письма:<br/>

            <input type=\"text\" name=\"tema\"></p>

           <p>Введите текст письма:<br/><textarea name=\"text2\" cols=45 rows=10>Уважаемый(-ая), \$I\$ \$O$</textarea></p>

<p>Выберите получателей письма:</p>"

    ;

    if ($_GET['otd'] == 'n') {//выбран общий список

        $sql = "SELECT * FROM `adress` ORDER BY `name`";

    } else {//выбран отдел

        $sql = "SELECT a.* FROM `adress` a JOIN `polz-otd` p ON (a.`id`=p.`idpolz`) WHERE p.`idotd`=" . (int) $_GET['otd'] . ' ORDER BY `name`';

    }

    $res = mysql_query($sql, $con);

    echo mysql_error();

    $count = mysql_num_rows($res);

    echo "<table border=\"1\">";

    $check = $_GET['otd'] == 'n' ? '' : ' checked="checked"';

    while ($row = mysql_fetch_assoc($res)) {

        echo "<tr>

                <td><input type=\"checkbox\" name=\"users[$row[id]]\" $check></td>

                <td>$row[name]</td>

                <td>$row[email]</td></tr>"

        ;

    }

    echo "</table><input type=\"submit\" name=\"go\" value=\"Отправить пользователям\"></form>";

} else {

    $res = mysql_query("SELECT * FROM `otdel` ORDER BY `name`");//Вывод меню

    echo '<center><p><h2>Отправка письма</h2></p>

        <p><h3>Пользователи</h3></p><br/>

        <a href="?shag1=otpr_pisma&otd=n" title="Выбрать из общего списка пользователей">все</a><br/>';

    while ($row = mysql_fetch_assoc($res)) {

        echo "<a href=\"?shag1=otpr_pisma&otd=$row[id]\" title=\"Выбрать из списка пользователей, входщих в отдел\">$row[name]</a><br/>

        <p><a href=\"index.php\" title=\"Вернуться в главное меню\">Главное меню</a></p>";

    }

}

?>

Синхронизация с MS Active Directory

Когда вы щёлкаете по этой ссылке, запускается  файл, в котором находится скрипт, выполняющий синхронизацию локальной  адресной книги с MS Active Directory. Вы видите только сообщение о том, что синхронизация прошла успешно и количество добавленных записей.

Ниже  предоставлен код(файл sinhr.inc.php):

<?php

       $srv = '192.168.0.1';//Подключение к серверу AD и получение информации о пользователях

                $srv_domain = 'fgoupsk.local';

                $srv_login = 'pochta@' . $srv_domain;

                $srv_pass = 'xp3abs';

                $dn = 'dc=fgoupsk,dc=local';

                $filter = "(&(mail=*)(objectCategory=user))";

                $attr = array("cn", "mail", "title", "departament", "company", "memberof");

                $dc = ldap_connect($srv);

                ldap_set_option($dc, LDAP_OPT_PROTOCOL_VERSION, 3);

                ldap_set_option($dc, LDAP_OPT_REFERRALS, 0);

 

                if ($dc) {

                    ldap_bind($dc, $srv_login, $srv_pass);

                    //echo ldap_error($dc);

                    $rezult = ldap_search($dc, $dn, $filter, $attr);

                    //echo ldap_error($dc);

                    $rezult_entires = ldap_get_entries($dc, $rezult);

                    //echo ldap_error($dc);

                    //print_r($rezult_entires);

                    ldap_unbind($dc);

                    /* $con = mysql_connect('localhost', 'root', '230105povtias') or die(33); //и созраняем в базу

                      mysql_select_db('adress', $con);

                      mysql_set_charset('utf8', $con); */

                    $count = 0;

                    for ($i = 0; $i < $rezult_entires['count']; $i++) {//выполнение соответствующего запроса и сохранение записей в БД

                        $res = mysql_query("SELECT *

                        FROM `adress`

                        WHERE `email` LIKE '" . mysql_real_escape_string($rezult_entires[$i]['mail'][0]) . "'", $con);

                        //echo mysql_num_rows($res);

                        if (mysql_num_rows($res) == 0) {

                            if (mysql_query("INSERT into `adress` (

                     `id`,`name`,`email`) VALUES(NULL, '" . mysql_real_escape_string($rezult_entires[$i]['cn'][0]) . "', '" . mysql_real_escape_string($rezult_entires[$i]['mail'][0]) . "'

                        )", $con))

                                $count++;

                            echo mysql_error($con);

                        }

                    }

                    echo "<center><p><h2>Синхронизация с MS Active Directory</h2></p>

                    <p>Синхронизация прошла успешно! Импортировано: $count шт.</p>

                    <p><p><a href=\"index.php\" title=\"Вернуться в главное меню\">Главное меню</a></p><p>";

                } 

Информация о работе Отчет о стажировке на ГБОУ СПФ «Перевозский строительный колледж»