X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Вывод страницы из БД, По просьбе marios'a
FordogeN
FordogeN
Topic Starter сообщение 9.7.2009, 16:08; Ответить: FordogeN
Сообщение #1


Сразу говорю - я не тестил, но вроде все правильно.
<?php
// Соединяемся с БД

$page=$_GET['page'];  // Получаем id страницы и заносим в переменную
$type=$_GET['type'];   // Получаем имя таблицы из которой будем выводить и заносим в переменную
$result = mysql_query("SELECT * FROM '$type' WHERE id='$page';",$mysql_connect) or die("error");  // Запрос к БД
$myrow = mysql_fetch_array($result);

echo $myrow['content'];  // Выводим поле content  из выбранных таблицы и строки

?>


Допустим это все будет в файле index.php.
При таком URL: index.php?type=news&id=1 мы выведем из таблицы news запись (строку) c ID=1

Расписываю запрос к БД
SELECT * Говорим "Выбрать все поля"
FROM '$type' из таблицы которая передается в переменной $type
WHERE id='$page' где поле ID=Значению переменной $page
; точка-запятая всегда должна быть в конце запроса


--------------------


Поблагодарили: (1)
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 10.7.2009, 16:12; Ответить: ZiTosS
Сообщение #2


Взлом кода fordogen. Можно воспользоваться SQL-инъекцией. Писать код инъекции не буду. Просто скажу что все переменные которые можно подменить нужно проверять. А так же надо проверять, вообще есть ли записи в таблице.
Вот мой код:
?php

// Соединяемся с БД

$page = intval($_GET['page']);  // Получаем id страницы и заносим в переменную
$type = mysql_escape_string($_GET['type']);   // Получаем имя таблицы из которой будем выводить и заносим в переменную
$sql = "SELECT `*` FROM `{$type}` WHERE `id`={$page} LIMIT 1";
$result = mysql_query($sql);
if(!mysql_num_rows($result)) $myrow = "Нет запрашиваемых данных в таблице";
else $myrow = mysql_fetch_array($result);

if(!empty($myrow['content'])) echo $myrow['content'];  // Выводим поле content  из выбранных таблицы и строки
else echo $myrow;

?>


Поблагодарили: (0)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
FordogeN
FordogeN
Topic Starter сообщение 10.7.2009, 16:39; Ответить: FordogeN
Сообщение #3


ZiTosS, спасибо. Я еще с защитой от инъекций не совсем разобрался.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
WebKiD
WebKiD
сообщение 14.7.2009, 2:00; Ответить: WebKiD
Сообщение #4


Спасибо ZiTosS и FordogeN, полезный скриптик!
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Troy_mw
Troy_mw
сообщение 23.7.2009, 19:14; Ответить: Troy_mw
Сообщение #5


не та тема
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
a.graphics
a.graphics
сообщение 24.7.2009, 18:25; Ответить: a.graphics
Сообщение #6


хоть убей..не пойму в чем сила этой махинации? `{$type}` я про скобки {
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
FordogeN
FordogeN
Topic Starter сообщение 25.7.2009, 10:29; Ответить: FordogeN
Сообщение #7


эт чтоб переменные не смешивались с чем либо еще.


Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Нужно ли закрывать ненужные страницы тегом noindex, follow?
8 noviktamw 2917 2.3.2024, 12:53
автор: toplinks
Горячая тема (нет новых ответов) Ручной обмен, ввод/вывод электронных валют | ЮMoney, WMZ, Крипта, Приват, Монобанк | Низкие комиссии, минимальные суммы сделок
быстро, удобно, по доступному курсу
200 Sostavitel 98287 11.2.2024, 21:07
автор: Wolfhound
Открытая тема (нет новых ответов) Sbitcoin.ru – Ввод, Вывод, Обмен: Qiwi, YD, Btc, Btc-e, PM, Cash IN, PR24, MG, WU, Нал (RU, UA).
9 sbitcoinru 6786 10.10.2023, 19:25
автор: Sbitcoin
Горячая тема (нет новых ответов) Обмен WebMoney - Яндекс - QIWI. Вывод/ввод Приват24 UAH
225 himin 132945 7.5.2023, 13:26
автор: Вера_Симонова
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлы«»101Crypta.com«»ВВОД/ВЫВОД/ОБМЕН«»BTC/ETH/QIWI/USDT/VISA/MC«»НАЛИЧНЫЕ/СНГ/ЕВРОПА«»
13 101Crypta 12166 18.4.2023, 23:15
автор: 101Crypta


 



RSS Текстовая версия Сейчас: 26.4.2024, 2:27
Дизайн