Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Чтение файла на сервере 
:(
    Опции темы
SoWa
Дата 24.7.2010, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Харекришна
****


Профиль
Группа: Комодератор
Сообщений: 2422
Регистрация: 18.10.2004

Репутация: 6
Всего: 74



Если человека так заботит проблема сокрытия какой-то текстовой информации в некоем файле, то почему бы не сделать вот так:
вместо того, чтобы эту информацию печатать - помести её в функцию, которая будет возвращать тебе эту информацию. И вызывай эту функцию из того файла, куда ты подключаешь защищаемый.

Пример, как у тебя:
Код

secure.php
<?php
echo "Это незащищенные данные, их видно из браузера";
?>

index.php
<?php
require_once("secure.php");
?>
//Выведет эти данные


Пример сокрытия:
Код

secure.php
<?php
function getSecureData(){
return "Это защищенные данные, их не видно из браузера";
}
?>

index.php
<?php
require_once("secure.php");
$SecureData = getSecureData();
?>
//не выведет эти данные, а оставит для твоего использования



--------------------
Всем добра smile
PM MAIL ICQ   Вверх
smartov
Дата 25.7.2010, 10:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



Цитата(Plavozont @  24.7.2010,  08:50 Найти цитируемый пост)
в смысле на своём сервере.

Как он со своего сервера достанет (ВНИМАНИЕ) Php код!!! на твоем сервере. Учитывая что PHP код не отдается апачем. Отдается результат его исполнения.
PM MAIL   Вверх
Plavozont
Дата 27.7.2010, 05:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 182
Регистрация: 14.4.2008

Репутация: нет
Всего: нет



Да... вы меня не поняли :(

Цитата

помести её в функцию, которая будет возвращать тебе эту информацию


Информация должна быть редактируема через рhp код....

Цитата

Как он со своего сервера достанет (ВНИМАНИЕ) Php код!!! на твоем сервере.


Php код он ясень пень не достанет, а вот содержимое текстового файла(открытого для публичного редактирования к тому-же(по другому он у меня вообще никак не редактируется)) - сколько угодно  smile

Можно вообще сделать просто - создать в папке с сайтом файл имя которого равняется имени базы данных, но опять же, чтобы создать файл, у папки в которой его создаёшь должно стоять публичное право на запись. Вот скажите, это так и должно быть ? Только через публичные права на сайте можно что-то создавать/удалять/редактировать ?
--------------------
Fortunately, the circumstances under which those words are useful run out at a relatively low level of multiplicity.
PM MAIL   Вверх
smartov
Дата 27.7.2010, 09:55 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



Plavozont, 
Цитата(Plavozont @  27.7.2010,  05:33 Найти цитируемый пост)
Информация должна быть редактируема через рhp код....

Цитата(Plavozont @  27.7.2010,  05:33 Найти цитируемый пост)
а вот содержимое текстового файла(открытого для публичного редактирования к тому-же(по другому он у меня вообще никак не редактируется)) - сколько угодно


Чувак, снимись с ручника. Тебе уже по десятому разу объясняют! 

1) Кто тебе мешает из PHP кода редактировать другой PHP код? Нафига делать текстовый файл с настройками, а потом бояться что его сопрут? Делай PHP файл с настройками и редактируй его! Извне его достать нельзя ---------> Вот и нет проблемы!

2) На публичное редактирование тебе плевать c колокольни. С другого сервера НИКАК нельзя отредактировать файл на твоем сервере, даже если на него стоят права 0777. Разве что ты сам их пригласишь, предварительно выдав пароли на ssh или ftp.

Если же у тебя на ТВОЕМ ЖЕ сервере в соседней папке рядом живут чуваки, которые могут технически украсть твой файл - я тебе сочувствую и ты НИКАК не решишь эту проблему, кроме как положить все в базу. Но даже в таком случае шанс кражи минимален, так как они не знают твою структуру папок и не знают, где у тебя лежит этот файл.
PM MAIL   Вверх
Plavozont
Дата 28.7.2010, 04:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 182
Регистрация: 14.4.2008

Репутация: нет
Всего: нет



Цитата

Кто тебе мешает из PHP кода редактировать другой PHP код?


Аммм... так яш уже спрашивал: "А КАК??"... извините...
--------------------
Fortunately, the circumstances under which those words are useful run out at a relatively low level of multiplicity.
PM MAIL   Вверх
ksnk
Дата 28.7.2010, 09:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Цитата(Plavozont @  28.7.2010,  04:32 Найти цитируемый пост)
так яш уже спрашивал: "А КАК??".

Для примера - разместить у себя на сервере во такой скрипт.
Код

<?php
define('FILE_TO_EDIT','config.php');

if(isset($_POST['save'])){
    if(get_magic_quotes_gpc())
        stripslashes($_POST['file']);
    file_put_contents(FILE_TO_EDIT,$_POST['file']);
}

if($_SERVER['REQUEST_METHOD']=='POST'){
    header("location: http://".$_SERVER["SERVER_NAME"].$_SERVER['REQUEST_URI']);
    exit;
}

if(is_readable(FILE_TO_EDIT))
    $text=file_get_contents(FILE_TO_EDIT);
else
    $text='';
?>

<body>
<form action="" method="post">
<textarea name="file">
<?=htmlspecialchars($text);?>
</textarea>
<input type="submit" name="save" value="Save">
</form>
</body>

Если ввести в адресной строке броузера адрес этого скрипта и побеспокоится, чтобы файл config.php был открыт для записи (установить ему правильные атрибуты). То скрипт будет способен редактировать этот файл.

А вот чтобы злые люди не запустили этот скрипт и не заредактировали все что захотят, нужно сюда прикрутить систему авторизации... Но это уже совсем другая история...  smile 


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
skyboy
Дата 28.7.2010, 09:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(Plavozont @  28.7.2010,  03:32 Найти цитируемый пост)
так яш уже спрашивал: "А КАК??"

так же, как и текстовые файл. естественно, надо следить, чтоб соблюдался синтаксис формируемого РНР файла.
следи за моими руками:
Код

$config = array('dsn'=> 'mysql:host=localhost;dbname=testdb', 'home'=> getcwd(), 'otherConfig'=> 'otherValue');
$configFileName = 'config.php';
unlink($configFileName); // удаляем текущий
$content = '<?php' . "\n";
foreach($config as $key => $value) {
  $content .= '$config["' . $key . '"] = "' . str_replace('"', '\"', $value) . '";' . "\n";
}
file_put_contents($configFileName, $content);

это велосипед, не лишенный недостатков.
лучше использовать var_export
Код

$config = array('dsn'=> 'mysql:host=localhost;dbname=testdb', 'home'=> getcwd(), 'otherConfig'=> 'otherValue');
$configFileName = 'config.php';
unlink($configFileName); // удаляем текущий
$content = '<?php' . "\n";
$content .= '$config = ' . var_export($config, true);
file_put_contents($configFileName, $content);

PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0535 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.