<MyRusakov.ru />

Вёрстка сайта с нуля

Вёрстка сайта с нуля

Это уникальная информация по созданию страниц любой сложности. Вы узнаете всё, что нужно по HTML и CSS, а также увидите множество примеров по вёрстке страниц. А также почти к каждому уроку идут упражнения для закрепления материала, поэтому в отличном результате можете быть уверены! Пройдя данный курс, Вы сможете верстать страницы с любым по сложности дизайном. Помимо курса, Вы получите Бонус, который расскажет, как заработать на вёрстке сайтов.

Весь курс соткан из практических примеров реальной вёрстки. А также почти к каждому уроку идут упражнения для закрепления материала, поэтому в отличном результате можете быть уверены!

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

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

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

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

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

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

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

вопрос насчет урока регистрации сайта
23.03.2014 15:34:37 вопрос насчет урока регистрации сайта Сообщение #1
azat1500

azat1500

Новичок

Новичок

Дата регистрации:
30.01.2014 12:50:19

Сообщений: 9

Всем привет! возникла такая проблема, в курсе php и mysql с нуля до гуру, в разделе создание движка с нуля, при регистрации на сайте ввожу, логин, пароль, и капчу, но выводиться ошибка "Попробуйте выполнить операцию позже, иначе обратитесь к администрации." подскажите как ее исправить? я посмотрел весь код, так-то ошибок не нашел, но почему-то не добавляются записи в phpmyadmin заранее большое спасибо!
Профиль Ответить
23.03.2014 15:54:47 вопрос насчет урока регистрации сайта Сообщение #2
alexandrdante

alexandrdante

Модератор

Модератор

Дата регистрации:
15.11.2013 15:33:40

Сообщений: 207

Нам то код покажите,а то что мы сказать то сможем?
классы файла конфигурации,
код файла регистрации,и классы файла db
думаю,достаточно
Профиль Ответить
23.03.2014 16:21:47 вопрос насчет урока регистрации сайта Сообщение #3
azat1500

azat1500

Новичок

Новичок

Дата регистрации:
30.01.2014 12:50:19

Сообщений: 9

напишите пожалуйста свой е-mail? просто здесь не получается прикрепить файлы, их слишком много, они все в разных папках
Профиль Ответить
23.03.2014 16:24:27 вопрос насчет урока регистрации сайта Сообщение #4
alexandrdante

alexandrdante

Модератор

Модератор

Дата регистрации:
15.11.2013 15:33:40

Сообщений: 207

указываете название и в тег code помещаете код из файла

я сказал,какие файлы нужны

Почту,к сожалению,не предоставляю по требованию

И да,вопросы по урокам лучше пишите в Службу поддержки
Там быстрее отвечу
Также можете запаковать в архив и загрузить на rghost,а потом выслать ссылку мне
Бекап базы данных также нужен
Профиль Ответить
23.03.2014 16:41:38 вопрос насчет урока регистрации сайта Сообщение #5
azat1500

azat1500

Новичок

Новичок

Дата регистрации:
30.01.2014 12:50:19

Сообщений: 9

Вот файлы которые вы просили:

config_class.php

<?php

class Config {

var $sitename = "Mysite.Local";
var $address = "http://mysite.local/";
var $secret = "dog9999";
var $host = "localhost";
var $db = "mybase";
var $db_prefix = "lesson_";
var $user = "root";
var $password = "";
var $admname = "Азат Нигматуллин";
var $admemail = "azatravilovich@mail.ru";
var $dir_text = "lib/text/";
var $dir_tmpl = "tmpl/";
var $count_blog = 2;

var $min_login = 3;
var $max_login = 255;
}

?>


regcontent_class.php
<?php
require_once "modules_class.php";

class RegContent extends Modules {

public function __construct($db) {
parent::__construct($db);
}

protected function getTitle() {
return "Регистрация на сайте";
}

protected function getDescription() {
return "Регистрация пользователя на сайте.";
}

protected function getKeyWords() {
return "регистрация сайт, регистрация пользователь сайт";
}

protected function getMiddle() {
$sr["message"] = $this->getMessage();
$sr["login"] = $_SESSION["login"];
return $this->getReplaceTemplate($sr, "form_reg";
}
}
?>


database_class.php

<?php
require_once "config_class.php";
require_once "checkvalid_class.php";

class DataBase {

private $config;
private $mysqli;
private $valid;

public function __construct() {
$this->config = new Config();
$this->valid = new CheckValid();
$this->mysqli = new mysqli($this->config->host, $this->config->user, $this->config->password, $this->config->db);
$this->mysqli->query("SET NAMES 'windows-1251'";
}

private function query($query) {
return $this->mysqli->query($query);
}

private function select($table_name, $fields, $where = "", $order = "", $up = true, $limit = "" {
for ($i = 0; $i < count($fields); $i++)
{
if ((strpos($fields[$i], "(" === false) && ($fields[$i] != "*") $fields[$i] = "`".$fields[$i]."`";
}
$fields = implode(",", $fields);
$table_name = $this->config->db_prefix.$table_name;
if (!$order) $order = "ORDER BY `id`";
else {
if ($order != "RAND()" {
$order = "ORDER BY `$order`";
if (!$up) $order .= " DESC";
}
else $order = "ORDER BY `$order`";
}
if ($limit) $limit = "LIMIT $limit";
if ($where) $query = "SELECT $fields FROM $table_name WHERE $where $order $limit";
else $query = "SELECT $fields FROM $table_name $order $limit";
$result_set = $this->query($query);
if (!$result_set) return false;
$i = 0;
while ($row = $result_set->fetch_assoc()) {
$data[$i] = $row;
$i++;
}
$result_set->close();
return $data;
}

public function insert($table_name, $new_values) {
$table_name = $this->config->db_prefix.$table_name;
$query = "INSERT INTO $table_name (";
foreach ($new_values as $field => $value) $query .= "`".$field."`,";
$query = substr($query, 0, -1);
$query .= " VALUES (";
foreach ($new_values as $value) $query .= "'".addslashes($value)."',";
$query = substr($query, 0, -1);
$query .= "";
return $this->query($query);
}

private function update($table_name, $upd_fields, $where) {
$table_name = $this->config->db_prefix.$table_name;
$query = "UPDATE $table_name SET ";
foreach ($upd_fields as $field => $value) $query .= "`$field` = '".addslashes($value)."',";
$query = substr($query, 0, -1);
if ($where) {
$query .= " WHERE $where";
return $this->query($query);
}
else return false;
}

public function delete($table_name, $where = "" {
$table_name = $this->config->db_prefix.$table_name;
if ($where) {
$query = "DELETE FROM $table_name WHERE $where";
return $this->query($query);
}
else return false;
}

public function deleteAll($table_name) {
$table_name = $this->config->db_prefix.$table_name;
$query = "TRUNCATE TABLE `$table_name`";
return $this->query($query);
}

public function getField($table_name, $field_out, $field_in, $value_in) {
$data = $this->select($table_name, array($field_out), "`$field_in`='".addslashes($value_in)."'";
if (count($data) != 1) return false;
return $data[0][$field_out];
}

public function getFieldOnID($table_name, $id, $field_out) {
if (!$this->existsID($table_name, $id)) return false;
return $this->getField($table_name, $field_out, "id", $id);
}

public function getAll($table_name, $order, $up) {
return $this->select($table_name, array("*", "", $order, $up);
}

public function getAllOnField($table_name, $field, $value, $order, $up) {
return $this->select($table_name, array("*", "`$field`='".addslashes($value)."'", $order, $up);
}

public function getLastID($table_name) {
$data = $this->select($table_name, array("MAX(`id`)");
return $data[0]["MAX(`id`)"];
}

public function deleteOnID($table_name, $id) {
if (!$this->existsID($table_name, $id)) return false;
return $this->delete($table_name, "`id` = '$id'";
}

public function setField($table_name, $field, $value, $field_in, $value_in) {
if (!$this->existsID($table_name, $id)) return false;
return $this->update($table_name, array($field => $value), "`$field_in` = '".addslashes($value_in)."'";
}

public function setFieldOnID($table_name, $id, $field, $value) {
if (!$this->existsID($table_name, $id)) return false;
return $this->setField($table_name, $field, $value, "id", $id);
}

public function getElementOnID($table_name, $id) {
if (!$this->existsID($table_name, $id)) return false;
$arr = $this->select($table_name, array("*", "`id` = '$id'";
return $arr[0];
}

public function getRandomElements($table_name, $count) {
return $this->select($table_name, array("*", "", "RAND()", true, $count);
}

public function getCount($table_name) {
$data = $this->select($table_name, array("COUNT(`id`)");
return $data[0]["COUNT(`id`)"];
}

public function isExists($table_name, $field, $value) {
$data = $this->select($table_name, array("id", "`$field` = '".addslashes($value)."'";
if (count($data) === 0) return false;
return true;
}

private function existsID($table_name, $id) {
if (!$this->valid->validID($id)) return false;
$data = $this->select($table_name, array("id", "`id`='".addslashes($id)."'";
if (count($data) === 0) return false;
return true;
}

public function __destruct() {
if ($this->mysqli) $this->mysqli->close();
}
}
?>
Профиль Ответить
23.03.2014 16:44:50 вопрос насчет урока регистрации сайта Сообщение #6
azat1500

azat1500

Новичок

Новичок

Дата регистрации:
30.01.2014 12:50:19

Сообщений: 9

вот еще, если что распаковал в архив, скрипты урока:

http://rghost.ru/private/53284260/0f537e27e7d795a067f70dd81edfaa35
Профиль Ответить
24.03.2014 14:23:46 вопрос насчет урока регистрации сайта Сообщение #7
LLIMATKO

LLIMATKO

Эксперт

Эксперт

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

Сообщений: 129

Если мне память не изменяет, то у русакова файл отвечающий за регистрацию назывался manager_class.php его как раз и надо.
Профиль Ответить
24.03.2014 17:41:31 вопрос насчет урока регистрации сайта Сообщение #8
azat1500

azat1500

Новичок

Новичок

Дата регистрации:
30.01.2014 12:50:19

Сообщений: 9

вот этот файл у меня manage_class.php

<?php
require_once "config_class.php";
require_once "user_class.php";

class Manage {

private $config;
private $user;
private $data;

public function __construct($db) {
session_start();
$this->config = new Config();
$this->user = new User($db);
$this->data = $this->secureData(array_merge($_POST, $_GET));
}

private function secureData($data) {
foreach ($data as $key => $value) {
if (is_array($value)) $this->secureData($value);
else $data[$key] = htmlspecialchars($value);
}
return $data;
}

public function redirect($link) {
header("Location: $link";
exit;
}

public function regUser() {
$link_reg = $this->config->address."?view=reg";
$captcha = $this->data["captcha"];
if (($_SESSION["rand"] != $captcha) && ($_SESSION["rand"] != "") {
return $this->returnMessage("ERROR_CAPTCHA", $link_reg);
}
$login = $this->data["login"];
if ($this->user->isExistsUser($login)) return $this->returnMessage("EXISTS_LOGIN", $link_reg);
$password = $this->data["password"];
if ($password == "" return $this->unknownError($link_reg);
$password = $this->hashPassword($password);
$result = $this->user->addUser($login, $password, time());
if ($result) return $this->returnPageMessage("SUCCESS_REG", $this->config->address."?view=message";
else return $this->unknownError($link_reg);
}

private function hashPassword($password) {
return md5($password.$this->config->secret);
}

private function unknownError($r) {
return $this->returnMessage("UNKNOWN_ERROR", $r);
}

private function returnMessage($message, $r) {
$_SESSION["message"] = $message;
return $r;
}

private function returnPageMessage($message, $r) {
$_SESSION["page_message"] = $message;
return $r;
}
}
?>
Профиль Ответить
24.03.2014 18:55:32 вопрос насчет урока регистрации сайта Сообщение #9
LLIMATKO

LLIMATKO

Эксперт

Эксперт

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

Сообщений: 129

$result = $this->user->addUser($login, $password, time());

У вас это строка поидее возвращает false - поглядите как идет запрос в базу данных и что он хочет туда внести с помощью echo и print_r.
Профиль Ответить
24.03.2014 21:02:05 вопрос насчет урока регистрации сайта Сообщение #10
azat1500

azat1500

Новичок

Новичок

Дата регистрации:
30.01.2014 12:50:19

Сообщений: 9

хорошо, попробую, спасибо большое.
Профиль Ответить