Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 10.05.2011
Сообщений: 9

страница из базы данных

10.05.2011, 15:54. Показов 1668. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток.
Ребят, такая проблема - как можно достать html-страницу из базы данных?
В базе есть спец.таблица для хранения страниц, сами страницы есть, к базе обратится могу, а вывести данные в виде страницы не могу.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.05.2011, 15:54
Ответы с готовыми решениями:

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

ASP страница выдает из базы данных Access вместо нормальных русских букв символы ?????
См. сабж. Если кто может, поможите:) Это очень срочно!

Использование псевдопеременных: bd (3,5) = s, где bd - база данных, s - элемент базы данных, тогда с 3 по 5 элементы базы данных заменить на элемент s.
всем доброго времени суток! есть у меня класс bd, массив элементов этого класса table, а вот сам метод: int copyTable(int a, int b) {...

13
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
10.05.2011, 16:22
ну допустим у тебя код страницы есть в БД, кстати перед записью нужно было делать
PHP
1
addslashes($page)//экранирование символов
например код страницы храниться в поле page, то запрос делается так:
PHP
1
2
3
$res = mysql_query("SELECT `page` FROM `table_name`");
$row = mysql_fetch_array($res);
echo stripslashes($row['page']); //удаляем экранирование и выводим страницу
0
0 / 0 / 0
Регистрация: 10.05.2011
Сообщений: 9
10.05.2011, 16:51  [ТС]
экранирование надо кидать в базу перед кодом страницы?
0
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
10.05.2011, 17:37
Цитата Сообщение от Cuprum29 Посмотреть сообщение
экранирование надо кидать в базу перед кодом страницы?
делаем
PHP
1
 $page = addslashes($page)
а потом пишем $page в БД...
1
0 / 0 / 0
Регистрация: 10.05.2011
Сообщений: 9
11.05.2011, 09:37  [ТС]
Блин, походу я что-то не так делаю.
вот страница, где я в базу закидываю страницу:
PHP
1
2
3
4
5
6
7
8
9
$page=$_POST['pole'];
    $page=addslashes($page);
     for ($i=1;$i<=100;$i++){
                    if ($res =mysql_query("SELECT * FROM `game_pages` WHERE `id`='$i'")){
                            if (mysql_num_rows($res)!=1)
                  {
                                      $q =mysql_query( "INSERT INTO `game_pages` ( `id` , `page`)
                                     VALUES ('$i', '$page')");
                                     break;
А вот код, где пытаюсь достать:
PHP
1
2
3
$res = mysql_query("SELECT 'page' FROM `game_pages` WHERE `id`='3'");
$row = mysql_fetch_array($res);
echo stripslashes($row['page']);
У меня вместо страницы выводится само слово "page" или, если убрать "page", "Array". Где ошибка?
0
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
11.05.2011, 09:57
Цитата Сообщение от Cuprum29 Посмотреть сообщение
$q =mysql_query( "INSERT INTO `game_pages` ( `id` , `page`) VALUES ('$i', '$page')");
надо так:
PHP
1
$q =mysql_query( "INSERT INTO `game_pages` ( `id` , `page`) VALUES (\"$i\", \"$page\")");
0
0 / 0 / 0
Регистрация: 10.05.2011
Сообщений: 9
11.05.2011, 17:04  [ТС]
Блин, тоже самое: выводится либо слово 'page', либо, если из echo stripslashes($row['page']) убрать ['page'], то слово 'Array'.
0
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
11.05.2011, 17:19
я тебе написал, как вставлять в БД...
а как ты передаешь данные в $page? и как записываешь в БД?
0
 Аватар для acupation
67 / 67 / 6
Регистрация: 26.03.2010
Сообщений: 546
11.05.2011, 17:29
PHP
1
echo stripslashes($row['page']);
Тут ты выводишь название страницы, а не ее содержание. то есть то, что ты передаешь в $page

Добавлено через 1 минуту
покажи какие данные ты передаешь в $page к примеру
0
0 / 0 / 0
Регистрация: 10.05.2011
Сообщений: 9
11.05.2011, 17:56  [ТС]
Я через простое текстовое поле на форме записываю html-код страницы в базу, чтобы потом этот код оттуда можно было достать и сформировать ту страницу, которую мне надо.
0
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
11.05.2011, 18:33
вот тебе пример скрипта, который записывает и извлекает:
форма:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="insert.php" method="POST">
<input type="text" name="page">
<input type="submit" value="записать">
</form>
</body>
</html>
сам файл insert.php, в котором пишем в БД страницу:
PHP
1
2
3
4
$page = addslashes($_POST['page']);
mysql_connect('your_host', 'user_name', 'password');
mysql_select_db("DB_name");
mysql_query("INSERT INTO `table_name` (`page`) VALUES (\"$page\")");
скрипт, который вывдит ссылки на номера страниц:
PHP
1
2
3
4
5
6
7
mysql_connect('your_host', 'user_name', 'password');
mysql_select_db("DB_name");
$res = mysql_query("SELECT `id` FROM `table_name`");
while ($row = mysql_fetch_array($res))
{
    echo "<a href=output.php?page=".$row['id'].">likn".$row['id']."</a>"; //формируем ссылки к скрипту output.php
}
id - это первичное поле с авто инкриментом, т.е. при создании так писать - id INT(10) NOT NULL AUTO_INCREMENT, PRIMARY KEY(id), т.е. в нем будут номера страницы

сам скрипт output.php:
PHP
1
2
3
4
5
6
7
$id = $_GET['page'];
mysql_connect('your_host', 'user_name', 'password');
mysql_select_db("DB_name");
$res = mysql_query("SELECT `page` FROM `table_name` WHERE(`id`=\"$id\")");
$row = mysql_fetch_array($res);
$page = stripcslashes($row['page']);
echo $page;
1
0 / 0 / 0
Регистрация: 10.05.2011
Сообщений: 9
13.05.2011, 14:19  [ТС]
Все, с выводом сам разобрался. Проблема теперь в другом: надписи, что были на русском, стали просто знаками вопроса.
0
130 / 117 / 30
Регистрация: 14.11.2010
Сообщений: 707
13.05.2011, 16:12
Цитата Сообщение от Cuprum29 Посмотреть сообщение
что были на русском
напиши:
HTML5
1
2
3
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1251">
</head>
и перед выводом из БД:
PHP
1
mysql_query("set names cp1251");
1
14.05.2011, 01:01

Не по теме:

ошибся страничкой, с телефона сидел....

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.05.2011, 01:01
Помогаю со студенческими работами здесь

При открытии базы данных FoxPro в приложение Delphi возникает ошибка драйвера внешней базы данных (8961)
При открытии базы данных FoxPro в приложение Delphi возникает ошибка драйвера внешней базы данных (8961) Код программы такой unit...

Восстановить поврежденный файл базы данных SQLite (сделать дамп запароленного файла базы данных)
Вообщем не понятно после чего перестал открываться файл базы данных с ошибкой - &quot;database disk image is malformed&quot;. Нашел...

Создание базы данных, открытие из под одной базы данных MS Access
Здравствуйте. В общем, C# начал заниматься только вот и сразу была поставлена задача создать базу данных. Идея есть, при открытие программы...

Как узнать имя базы данных и сервер базы данных?
База данных находится на локальной машине

Как сравнить переменную со строкой базы данных или как присвоить переменной значение строки базы данных ?
подскажите пожалуйста как мне сравнить переменную типа string с каким нибудь строкой базы данных. Или как присвоить значение строки базы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru