<MyRusakov.ru />

PHP и MySQL с Нуля до Гуру

PHP и MySQL с Нуля до Гуру

Данный курс - это более 20-ти часов видеоуроков по изучению PHP и MySQL. Ключевой момент курса - это создание движка для сайта с нуля. Каждая строчка комментируется. Практически для каждого урока имеются упражнения. Причём данные упражнения направлены не только на закрепление материала, но и на реализацию реальных задач, встающих перед Web-разработчиками при создании сайтов. После курса Вы сможете без проблем создавать движки для любых сайтов.

Также почти к каждому уроку идут упражнения для закрепления материала.

Просмотрев курс и выполнив упражнения, Вы сможете без проблем создавать функциональные движки для самых различных сайтов.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Пожалуйста помогите!
22.06.2014 09:04:45 Пожалуйста помогите! Сообщение #1
Christina

Christina

Новичок

Новичок

Дата регистрации:
23.03.2014 14:46:36

Сообщений: 1

Добрый день! Недавно начала изучение PHP и MySQL, будьте добры объясните код (в виде комментариев по каждой строчке).  Заранее благодарна! 
<?php 
function ValidateEmail($email)
{
$pattern = '/^([0-9a-z]([-.\w]*[0-9a-z])*@(([0-9a-z])+([-\w]*[0-9a-z])*\.)+[a-z]{2,6})$/i';
return preg_match($pattern, $email);
}
if ($_SERVER['REQUEST_METHOD'] == 'POST' && $_POST['formid'] == 'contactsform'
{
$mailto = 's-a@mail.ru';
$mailfrom = isset($_POST['email']) ? $_POST['email'] : $mailto;
$subject = 'Reception';
$message = 'Контактная информация с сайта:';
$success_url = 'contacts.php';
$error_url = 'contacts.php';
$error = '';
$mysql_server = 'localhost'; 
$mysql_database = 's-a_';
$mysql_table = 'anketa2_';
$mysql_username = '';
$mysql_password = '';
$eol = "\n";
$max_filesize = isset($_POST['filesize']) ? $_POST['filesize'] * 1024 : 1024000;
$boundary = md5(uniqid(time()));
$header = 'From: '.$mailfrom.$eol;
$header .= 'Reply-To: '.$mailfrom.$eol;
$header .= 'MIME-Version: 1.0'.$eol;
$header .= 'Content-Type: multipart/mixed; boundary="'.$boundary.'"'.$eol;
$header .= 'X-Mailer: PHP v'.phpversion().$eol;

if (!empty($error))
{
$errorcode = file_get_contents($error_url);
$replace = "##error##";
$errorcode = str_replace($replace, $error, $errorcode); 
echo $errorcode;
exit;
}
$internalfields = array ("submit", "reset", "send", "filesize", "formid", "captcha_code", "recaptcha_challenge_field", "recaptcha_response_field";
$message .= $eol;
$message .= "IP Address : "; 
$message .= $_SERVER['REMOTE_ADDR'];
$message .= $eol;

foreach ($_POST as $key => $value)
{
if (!in_array(strtolower($key), $internalfields)) 
{
if (!is_array($value))
{
$message .= ucwords(str_replace("_", " ", $key)) . " : " . $value . $eol;
}
else
{
$message .= ucwords(str_replace("_", " ", $key)) . " : " . implode(",", $value) . $eol;
}
}
}
$body = 'This is a multi-part message in MIME format.'.$eol.$eol;
$body .= '--'.$boundary.$eol;
$body .= 'Content-Type: text/plain; charset=utf8'.$eol;
$body .= 'Content-Transfer-Encoding: 8bit'.$eol;
$body .= $eol.stripslashes($message).$eol;
if (!empty($_FILES))
{
foreach ($_FILES as $key => $value)
{
if ($_FILES[$key]['error'] == 0 && $_FILES[$key]['size'] <= $max_filesize)
{
$body .= '--'.$boundary.$eol;
$body .= 'Content-Type: '.$_FILES[$key]['type'].'; name='.$_FILES[$key]['name'].$eol;
$body .= 'Content-Transfer-Encoding: base64'.$eol;
$body .= 'Content-Disposition: attachment; filename='.$_FILES[$key]['name'].$eol;
$body .= $eol.chunk_split(base64_encode(file_get_contents($_FILES[$key]['tmp_name']))).$eol;
}
}
}
$body .= '--'.$boundary.'--'.$eol;
if ($mailto != ''
{
mail($mailto, $subject, $body, $header);
}
$search = array("ä", "Ä", "ö", "Ö", "ü", "Ü", "ß", "!", "§", "$", "%", "&", "/", "\x00", "^", "°", "\x1a", "-", "\"", " ", "\\", "\0", "\x0B", "\t", "\n", "\r", "(", "", "=", "?", "`", "*", "'", ":", ";", ">", "<", "{", "}", "[", "]", "~", "²", "³", "~", "µ", "@", "|", "<", "+", "#", ".", "´", "+", ",";
$replace = array("ae", "Ae", "oe", "Oe", "ue", "Ue", "ss";
foreach($_POST as $name=>$value)
{
$name = str_replace($search, $replace, $name);
$name = strtoupper($name);
$form_data[$name] = $value;
}

mysql_connect($mysql_server, $mysql_username, $mysql_password) or die('Failed to connect to database server!<br>'.mysql_error());
mysql_query("SET NAMES utf8";
mysql_query("CREATE DATABASE IF NOT EXISTS $mysql_database";
mysql_select_db($mysql_database) or die('Failed to select database<br>'.mysql_error());
mysql_query("CREATE TABLE IF NOT EXISTS $mysql_table (ID int(9) NOT NULL auto_increment, `DATESTAMP` DATE, `TIME` VARCHAR(8), `IP` VARCHAR(15), `BROWSER` TINYTEXT, PRIMARY KEY (id))";

foreach($form_data as $name=>$value)
{
mysql_query("ALTER TABLE $mysql_table ADD $name VARCHAR(255)";
}
mysql_query("INSERT INTO $mysql_table (`DATESTAMP`, `TIME`, `IP`, `BROWSER`)
VALUES ('".date("Y-m-d"."',
'".date("G:i:s"."',
'".$_SERVER['REMOTE_ADDR']."',
'".$_SERVER['HTTP_USER_AGENT']."'"or die('Failed to insert data into table!<br>'.mysql_error()); 
$id = mysql_insert_id();
foreach($form_data as $name=>$value)

mysql_query("UPDATE $mysql_table SET $name='".mysql_real_escape_string($value)."' WHERE ID=$id" or die('Failed to update table!<br>'.mysql_error());
}
mysql_close();
header('Location: '.$success_url); 
exit;
}
?>
Профиль Ответить
02.07.2014 14:59:52 Пожалуйста помогите! Сообщение #2
LLIMATKO

LLIMATKO

Эксперт

Эксперт

Дата регистрации:
12.02.2013 15:31:03

Сообщений: 129

<?php //начало пхп языка)
function ValidateEmail($email) //функциявалидности(корректности) почты, в которую приходит переменная email
{
$pattern = '/^([0-9a-z]([-.\w]*[0-9a-z])*@(([0-9a-z])+([-\w]*[0-9a-z])*\.)+[a-z]{2,6})$/i'; // регулярное выражение, которое проверяет корректно ли ввели почту.
return preg_match($pattern, $email); // возвращает результат поиска(если соответсвует то true иначе false)
}
if ($_SERVER['REQUEST_METHOD'] == 'POST' && $_POST['formid'] == 'contactsform'  // кажется это звучит так - если есть пост запрос и он равен контактформ
{
$mailto = 's-a@mail.ru'; // в переменную заносим текст
$mailfrom = isset($_POST['email']) ? $_POST['email'] : $mailto; //если сущ пост с именем имаэл то в переменную заносим ее, если нет то заносим предыдую строчку
$subject = 'Reception'; тут все просто
$message = 'Контактная информация с сайта:'; тут тоже
$success_url = 'contacts.php'; бла бла
$error_url = 'contacts.php'; бла бла
$error = ''; бла бла
$mysql_server = 'localhost'; 
$mysql_database = 's-a_';
$mysql_table = 'anketa2_';
$mysql_username = '';
$mysql_password = '';
$eol = "\n";
$max_filesize = isset($_POST['filesize']) ? $_POST['filesize'] * 1024 : 1024000; тут проверяется есть ли пост от размера файла
$boundary = md5(uniqid(time())); формируем уникальный идентификатор без префикса
$header = 'From: '.$mailfrom.$eol; заносим значения от кого и т.п.
$header .= 'Reply-To: '.$mailfrom.$eol;
$header .= 'MIME-Version: 1.0'.$eol;
$header .= 'Content-Type: multipart/mixed; boundary="'.$boundary.'"'.$eol;
$header .= 'X-Mailer: PHP v'.phpversion().$eol;

if (!empty($error)) если не установленна переменная еррор




все дальше я устал))) это ппц)
Профиль Ответить