<MyRusakov.ru />

Профессия Web-разработчик

Профессия Web-разработчик

Этот комплект за 8 месяцев превратит Вас в Web-разработчика с нуля. Учиться достаточно 1 час в день.

Начнёте Вы с HTML, CSS и вёрстки сайтов. Потом перейдёте к программированию и JavaScript. Затем изучите PHP, MySQL, SQL, Python. Изучите Web-фреймворки Laravel и Django. Создадите 5 своих сайтов для портфолио.

Комплект содержит:

- 540 видеоуроков

- 110 часов видео

- 1205 заданий для закрепления материала из уроков

- 5 финальных тестов

- 7 сертификатов

- 12 Бонусных курсов

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

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

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

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

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

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

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

Какая тема Вас интересует больше?

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

В чем плюс такого способа.
05.11.2012 16:30:24 В чем плюс такого способа. Сообщение #1
Fabos

Fabos

Новичок

Новичок

Дата регистрации:
05.11.2012 11:50:32

Сообщений: 8

Высмотрел на одной из cms.
$arguments = array('username'=>$una); $result = $db->Query("INSERT INTO ... VALUES ('{username}')", $arguments);

В чем плюс такого способа, инъекции тд. Как по защите, лучше?
Профиль
05.11.2012 16:45:57 В чем плюс такого способа. Сообщение #2
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Это совершенно бессмысленный отрывок. Что за $db? Что за метод Query(), что внутри этого метода?
Профиль
05.11.2012 18:03:58 В чем плюс такого способа. Сообщение #3
Fabos

Fabos

Новичок

Новичок

Дата регистрации:
05.11.2012 11:50:32

Сообщений: 8

$db-подключение к бд.
public function Query($sql, $data = array()) {
$sql = $this->query_process($sql, $data);
$this->count_query++;
$this->ResetError();
$this->sql = $sql;
$xtime = microtime();
$this->result = @mysql_query($this->sql, $this->mysql_link);
// start the analysis
if (TRUE === $this->result) { // simply result
$return = TRUE; // successfully (for example: INSERT INTO ...)
} else if (FALSE === $this->result) {
$this->SetError();
$return = FALSE; // error occured (for example: syntax error)
}
else // complex result
{
$num_result = mysql_num_rows($this->result);

switch( $num_result )
{
case 0:
$return = NULL; // return NULL rows
break;
case 1: // return one row ...
if(1 != mysql_num_fields( $this->result))
{
$return = array();
while( $obj = mysql_fetch_object($this->result)) array_push($return, $obj);
}
else
{
$row = mysql_fetch_row($this->result); // or as single value
$return = $row[0];
}
break;
default:
$return = array();
while( $obj = mysql_fetch_object($this->result)) array_push($return, $obj);
}
}
$ytime = microtime();
$this->delta += array_sum(explode(' ',$ytime)) - array_sum(explode(' ',$xtime));

return $return;
}
Профиль
05.11.2012 18:28:16 В чем плюс такого способа. Сообщение #4
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Здесь нет плюсов, это просто более удобный способ отправки запросов к базе данных. Самый обычный фреймворк. Никакой защиты я здесь не увидел, но она должна быть, возможно, в других методах данного класса.
Профиль
05.11.2012 18:39:10 В чем плюс такого способа. Сообщение #5
Fabos

Fabos

Новичок

Новичок

Дата регистрации:
05.11.2012 11:50:32

Сообщений: 8

Не по теме...
Инъекции
Проверяю присланные посты($_POST..), на содержание того чего должны содержать. Как еще можно сделать инъекцию, обойти эту проверку?
Профиль
05.11.2012 18:45:20 В чем плюс такого способа. Сообщение #6
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

htmlspecialchars() используйте, и уже 99% проблем уйдут. А если Вы ещё будете проверять корректность данных через регулярные выражения, то будет ещё лучше.
Профиль
05.11.2012 19:12:25 В чем плюс такого способа. Сообщение #7
Fabos

Fabos

Новичок

Новичок

Дата регистрации:
05.11.2012 11:50:32

Сообщений: 8

Спасибо.
Профиль