Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Удалить файл... 
:(
    Опции темы
Veche
Дата 25.5.2007, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Всем доброго времени суток. 

Прежде чем задать вопрос, хотел бы отметить, что я вижу в глаза исходники на java первый раз в жизни, поэтому не судите строго)

Разместил я тут на сайт чат Blab! Lite.  Т.к. это лайт версия в нем нет регистрации пользователей, поэтому я решил её дописать собственноручно. Все, конечно, хорошо, то среди множества php файлов попался один js файл, в котором находится функция, которую надо изменить. Собственно говоря вот она:

/* logout */
function log_out(){
n=parent.c.document.fms.name.value
parent.location='index.php?name='+n
return false}


Мне нужно изменить её так, чтобы в виде строки ей можно было передать имя файла и эта функция бы этот файл удаляла (или покрайней мере дописывала один символ в начало файла). Повозился на форуме, нашел код, где реализуется обращение к файлу, но ничего не понял). Помогите...)
PM MAIL   Вверх
batigoal
Дата 25.5.2007, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

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



Veche, это JavaScript.


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
Veche
Дата 25.5.2007, 15:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(batigoal @ 25.5.2007,  15:14)
Veche, это JavaScript.

Извиняюсь...) По неопытности перепутал раздел)
PM MAIL   Вверх
Mymik
Дата 25.5.2007, 17:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

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



Veche, а где тебе файл то нужно удалять ??? JS на клиенте ничего не может удалить, собственно как и на сервере...
А что за файл ??? как генерировать его имя ??? где оно храниться... а то мы как-то тоже не яснослышащие не знаем откуда брать имя файла...


--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
Veche
Дата 26.5.2007, 06:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(Mymik @ 25.5.2007,  17:18)
Veche, а где тебе файл то нужно удалять ??? JS на клиенте ничего не может удалить, собственно как и на сервере...
А что за файл ??? как генерировать его имя ??? где оно храниться... а то мы как-то тоже не яснослышащие не знаем откуда брать имя файла...

JS вызывается из файла php, в котором и расположена переменная с именем, а сам этот файл php расположен в папке с файлом, который нужно удалить. Всё это находится на серваке. Часть кода php:

</td><td align="right" width="70%"><a href="info.php?why=link" onclick="return log_out()" title="<?php print $lang[18];?>"><?php show_pic($pics[6],0); ?></a></td>
</tr></table></form><script type="text/javascript">ldd=1;</script></body></html>

Имя файла можно передать в качестве параметра... От сюда вопрос по синтаксису - как правильно объявить в заголовке, что передаётся строка?

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

obj = WScript.CreateObject("Scripting.FileSystemObject");
obj.DeleteFile(str);

где str это и есть строка, которая содержит имя файла. Скажите, это правильно?

З.Ы.: буду очень благодарен, если кто-нибудь даст ссылку на ХОРОШИЙ и понятный учебник по JS.
PM MAIL   Вверх
Veche
Дата 26.5.2007, 06:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Виноват - плохо юзал поиск. Нашел ссылку на майрософт:

Код

function ManipFiles()

{

   var fso, f1, f2, s;

   fso = new ActiveXObject("Scripting.FileSystemObject");

   f1 = fso.CreateTextFile("c:\\testfile.txt", true);

   Response.Write("Writing file <br>");

   // Write a line.

   f1.Write("This is a test.");

   // Close the file to writing.

   f1.Close();

   Response.Write("Moving file to c:\\tmp <br>");

   // Get a handle to the file in root of C:\.

   f2 = fso.GetFile("c:\\testfile.txt");

   // Move the file to \tmp directory.

   f2.Move ("c:\\tmp\\testfile.txt");

   Response.Write("Copying file to c:\\temp <br>");

   // Copy the file to \temp.

   f2.Copy ("c:\\temp\\testfile.txt");

   Response.Write("Deleting files <br>");

   // Get handles to files' current location.

   f2 = fso.GetFile("c:\\tmp\\testfile.txt");

   f3 = fso.GetFile("c:\\temp\\testfile.txt");

   // Delete the files.

   f2.Delete();

   f3.Delete();

   Response.Write("All done!");

}


Будет ли он пахать на сервере и на браузерах Opera и FireFox? Первый вопрос (как объявить что функции передаётся строка) пока открыт...

Это сообщение отредактировал(а) Veche - 26.5.2007, 06:52
PM MAIL   Вверх
Mymik
Дата 26.5.2007, 08:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

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



Veche, $_REQUEST это глобальный хеш массив (или как он у PHP'истов называется, кажись переменная окружения) который хранит ключ -> значение. Все значения что приходят из $_REQUEST являются строками...
Просто обратись к параметру и забери его значение. И все.
Я вот только так и не понял -- тебе нужно узнать как вытащить из REQUEST значение или тебе нужно что-то по JS ???

Тот код что ты привел, это WHS код, он будет пытаться удалить файл на стороне клиента, но на 99% я уверен, что пользователи запретят исполнять такой скрипт у себя на компьютере. Тем более по умолчанию там работает VB скрипт... а вот JS у меня не получилось туда всунуть... что-то матюкался на код...


--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
Veche
Дата 26.5.2007, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Я думал, что если вызвать JS (который находится на сервере)

f2 = fso.GetFile("testfile.txt");
f2.Delete();

то он будет пытаться удалить файл на сервере. Это не так?
PM MAIL   Вверх
batigoal
Дата 26.5.2007, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

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



Veche, JavaScript исполняется на клиенте. Хочешь удалять на сервере - делай это из PHP.


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
Veche
Дата 26.5.2007, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(batigoal @ 26.5.2007,  12:50)
Veche, JavaScript исполняется на клиенте. Хочешь удалять на сервере - делай это из PHP.

Хм... не знал. Спасибо!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




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


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

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