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



 

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

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

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Помогите разобраться
ta4
ta4
Topic Starter сообщение 8.2.2011, 21:27; Ответить: ta4
Сообщение #1


Приветствую!
В общем что я хочу.
Есть главная страница сайта index.php, мне нужно:
1) Сделать такой скрипт, нажал на ссылку на сайте например сайт.ру\do.php=123 и скрипт do.php ищет файл 123.txt в определенной папке на сервере и подгружает информацию из файла. Как сделать так? (покажите пожалуйста кодом)
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
www3_hb
www3_hb
сообщение 8.2.2011, 22:19; Ответить: www3_hb
Сообщение #2


Сразу ошибка сайт.ру\do.php=123
такого не бывает можно так сайт.ру\do.php?num=123
[PHP]<?
$get = $_GET['num'];
$file = fopen("http://www.sait.ru/".$get."","r"); // впиши свой сайт
if(!file)
{
echo("Ошибка открытия файла");
}
else
{
$buff = fread ($file,100);
print $buff;
}
?>[/PHP]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ta4
ta4
Topic Starter сообщение 8.2.2011, 22:36; Ответить: ta4
Сообщение #3


(www3_hb @ 9.2.2011, 00:19) *
Сразу ошибка сайт.ру\do.php=123
такого не бывает можно так сайт.ру\do.php?num=123
[PHP]<?
$get = $_GET['num'];
$file = fopen("http://www.sait.ru/".$get."","r"); // впиши свой сайт
if(!file)
{
echo("Ошибка открытия файла");
}
else
{
$buff = fread ($file,100);
print $buff;
}
?>[/PHP]

спасибо! можно ли его подредактировать и вместо открытия файла вставить <?php include("файл.txt") ?>
как будет выглядеть код?
т.е этот скрипт не выносить в файл do.php а прямо в index.php (если так можно)

,"r");
что значит "r"?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
www3_hb
www3_hb
сообщение 8.2.2011, 22:47; Ответить: www3_hb
Сообщение #4


1) МОЖНО просто include
[PHP]<html>
<head>
<title>Тест</title>
</head>
<body>
<? include "file.txt"; ?>
</body>

</html>[/PHP]
2) r это аргумент который помогает определить для чего открыть файл ( создать, читать, Запись и т.д.) Короче посмотри тут
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ta4
ta4
Topic Starter сообщение 8.2.2011, 22:51; Ответить: ta4
Сообщение #5


(www3_hb @ 9.2.2011, 00:47) *
1) МОЖНО просто include
[PHP]<html>
<head>
<title>Тест</title>
</head>
<body>
<? include "file.txt"; ?>
</body>

</html>[/PHP]
2) r это аргумент который помогает определить для чего открыть файл ( создать, читать, Запись и т.д.) Короче посмотри тут

нет, мне нужно не так.
у меня много текстовых файлов, и запрос index.php?num=123 определяет название файла. т.е. пройдя по ссылки сайт.ру\index.php?num=123 пользователь должен увидеть страницу с контентом из файла 123.txt
как такое сделать?

о все спасибо, сделал так
<? $get = $_GET['num']; ?>
<?php include($get.".txt") ?>
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ottaviano
ottaviano
сообщение 8.2.2011, 23:08; Ответить: ottaviano
Сообщение #6


(ta4 @ 9.2.2011, 00:51) *
<? $get = $_GET['num']; ?>
<?php include($get.".txt") ?>

маленький минус, если клиент введет "num=абракадабра", а у вас этого файла не окажется = будет красивая ошибка :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ta4
ta4
Topic Starter сообщение 8.2.2011, 23:15; Ответить: ta4
Сообщение #7


вроде как нормально о_0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
LifeUP
LifeUP
сообщение 8.2.2011, 23:24; Ответить: LifeUP
Сообщение #8


То что вы описываете не есть хороший вариант загрузки файлов, так как вместо нужного имени файла могут к вписать что угодно.
Если использовать его то в правильном варианте:
[PHP]
$page = isset ($_GET['page']) ? trim ($_GET['page']) : '';

// Вырезает всё кроме a-zA-Z0-9
$page = preg_match ('/^[a-zA-Z0-9]$/siu', '', $page);

// Папка где лежат файлы
$dir = 'page';

// Проверка на существование файла
if (is_file ($dir . '/' . $page . '.txt'))
{
// Достаю контент файла
$content = file_get_contents ($dir . '/' . $page . '.txt');
}
else
{
$content = 'Файл не найден';
}

// Выводим что получилось
echo $content;
[/PHP]

Как пользоваться:
mysite.ru/?page=имя файла

P.S насчёт preg_match не уверен, проверить негде.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ta4
ta4
Topic Starter сообщение 8.2.2011, 23:30; Ответить: ta4
Сообщение #9


спасибо, попробую сейчас
работает, если удалить строку
$page = preg_match ('/^[a-zA-Z0-9]$/siu', '', $page);
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
LifeUP
LifeUP
сообщение 8.2.2011, 23:44; Ответить: LifeUP
Сообщение #10


(ta4 @ 9.2.2011, 01:30) *
спасибо, попробую сейчас
работает, если удалить строку
$page = preg_match ('/^[a-zA-Z0-9]$/siu', '', $page);


я ошибся в регулярке, найдите строку preg_match ('/^[a-zA-Z0-9]$/siu', '', $page); и замените на preg_replace('/[^a-zA-Z0-9]/', '', $page);
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

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

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Помогите вспомнить рекламного бота Телеграм для обмена рекламой
0 Mixatraider 692 21.2.2024, 23:42
автор: Mixatraider
Открытая тема (нет новых ответов) Помогите рещить проблему с монитором.
Почему низкое разрешение при подключении монитора через displayport?
0 Levels 1695 11.12.2020, 0:48
автор: Levels
Открытая тема (нет новых ответов) Помогите кто нибудь получить партнерку Росбанк!
7 heisenberg_mw 2315 7.8.2020, 9:28
автор: heisenberg_mw
Открытая тема (нет новых ответов) Помогите найти тему пожалуйста
7 virtas 12402 24.7.2020, 17:02
автор: -JamesSmips-
Открытая тема (нет новых ответов) Помогите с поиском доноров
3 tehno_music 3332 4.11.2019, 17:15
автор: goblin78


 



RSS Текстовая версия Сейчас: 29.3.2024, 0:49
Дизайн