|
|
|
| Кто знает, прошу подсказать, написал скрипт для редактирования текстового файла по определенному алгоритму открываю файл через функцию fopen, отрывок скрипта следующий:
<?php
class OpenFile
{
static $_URL;
static $_page;
static $_line;
static $_text;
//------------------------------------------------------------
static function OpenFile_txt()
{
OpenFile::$_URL = "words.txt";
OpenFile::$_page = fopen(OpenFile::$_URL, "r");
while(!feof(OpenFile::$_page))
{
// получаем строку
OpenFile::$_line = fgets(OpenFile::$_page, 1024);
//echo '<br>ТЕКСТ ->'.OpenFile::$_line;
OpenFile::$_text[] = OpenFile::$_line;
}
return OpenFile::$_text;
}
//------------------------------------------------------------
} // запускать так OpenFile::OpenFile_txt();
?>
|
Собственно вопрос следующий: как можно через форму указывать переменной OpenFile::$_URL путь к файлу и адрес файла вместо строки OpenFile::$_URL = "words.txt";
Предполагаю что как-то так:
<form enctype="multipart/form" action=index.php method=post>
<table border=0>
<tr>
<td width=130 class=field>Файл:</td>
<td><input type=file name=name ></td>
</tr>
<tr><td> </td>
<td>
<input class=button type=submit value=Загрузить></td></tr>
</table>
</form>
|
Этот скрипт для загрузки файла, а как переменной name передать путь к файлу? | |
|
|
|
|
|
|
|
для: Чайка
(21.04.2009 в 18:43)
| | А зачем вам путь к файлу на клиенте? | |
|
|
|
|
|
|
|
для: sim5
(21.04.2009 в 18:48)
| | Да, не уточнил, сервер стоит локально, необходимо редактировать файлы находящиеся в разных местах на жестком диске, постоянно редактировать адрес в скрипте прерогатива знающих РНР, это неудобно для создания движка, для пользователей. | |
|
|
|
|
|
|
|
для: Чайка
(21.04.2009 в 18:58)
| | Пользователи тоже будут только локальные?
php от браузера клиентский путь принимать не будет. | |
|
|
|
|
|
|
|
для: Trianon
(21.04.2009 в 19:00)
| | Да, пользователи тоже будут только локальные. | |
|
|
|
|
|
|
|
для: Чайка
(21.04.2009 в 19:06)
| | Тогда получайте посредством JS значение атрибута value поля выбора файла и передавайте его скрытому полю формы. Ну а далее понятно.... | |
|
|
|
|
|
|
|
для: sim5
(21.04.2009 в 19:10)
| | Если не трудно как в коде это будет? | |
|
|
|
|
|
|
|
для: Чайка
(21.04.2009 в 19:14)
| |
<script>
function showPath() {
alert(document.getElementById('path').value)
}
</script>
<input type="file" onchange="document.getElementById('path').value = this.value; showPath()">
<input type="hidden" name="path" id="path" value="">
|
Функция showPath() чисто для проверки, так что удалите ее потом, как посмотрите, вместе с тегами <script></script>, а также ссылку на функцию в атрибуте onchange поля ввода файла. | |
|
|
|
|
|
|
|
для: Чайка
(21.04.2009 в 19:06)
| | тем не менее <input type=file> не подойдет для прямого доступа к файлам на клиентской машине. | |
|
|
|
|
|
|
|
для: Чайка
(21.04.2009 в 18:43)
| | Файл находится на клиенте или на сервере? | |
|
|
|
|
|
|
|
для: Trianon
(21.04.2009 в 18:57)
| | Файл *.txt находится на сервере | |
|
|
|
|
|
|
|
для: Чайка
(21.04.2009 в 19:00)
| | >Файл *.txt находится на сервере
Браузер к файлам на сервере через форму загрузки файла дотянуться не сможет. | |
|
|
|
|
|
|
|
для: Trianon
(21.04.2009 в 19:01)
| | Всем спасибо за помощь! | |
|
|
|