PDA

Просмотр полной версии : [Обсуждение] Запрос на сервер. Делфи


"Unix
20.12.2010, 14:07
Собственно есть программа в которую вводишь слово цифры или что то иное, оно проверят в определенном текстовом файле это слово и говорит о том, есть ли это слово в этом тексте или нет.
Теперь возник такой вопрос, есть сайт хостинг ftp я хочу этот файл залить на этот хост. Как мне сделать что бы программа соединялась с сервером и проверяла слово в текстовом файле который лежит на сервере..?
мой код:

procedure TForm1.Button1Click(Sender: TObject);
var i: Integer; fName: string; sl: TStringList; b: Boolean;
begin
m.Clear;
if e.Text = '' then
begin
m.Lines.Add('Пустой текст!');
Exit;
end;
fName := 'Test.txt';
if not FileExists(fName) then
begin
m.Lines.Add('Файл не найден!');
Exit;
end;
b := False;
sl := TStringList.Create;
sl.LoadFromFile(fName);
for i := 0 to sl.Count - 1 do
begin
if Pos(e.Text, sl[i]) <> 0 then
begin
b := True;
Break;
end;
end;
if b then
m.Lines.Add('Текст <' + e.Text + '> в файле найден') else
m.Lines.Add('Текст <' + e.Text + '> в файле НЕ найден');
sl.Free;
end;

что где редактировать?:sad:

Добавлено через 2 минуты
просто как бы, проверяла Искомое которое лежит на хосте.

Fiery Dragon
21.12.2010, 14:10
s:=id[Ссылки могут видеть только зарегистрированные и активированные пользователи]('[Ссылки могут видеть только зарегистрированные и активированные пользователи]');
в S содержимое файла,и уже по нему ищешь...

p.s у тебя написано что на фтп файл лежит,а я без понятия как к нему подключатся программно..так что как вариант залить файл на бесплатный хостинг и там уже искать

"Unix
21.12.2010, 21:04
Просто смотри, если ты разберешься то может поможешь:
Я могу сделать так:
форма - на форму кинуть кнопку, в ее обработчик событий написать что то типа такого,
procedure TForm1.Button1Click(Sender: TObject);
var
List : Tid[Ссылки могут видеть только зарегистрированные и активированные пользователи]
s : String;
begin
List := Tid[Ссылки могут видеть только зарегистрированные и активированные пользователи](nil);
try
s := List.Get('[Ссылки могут видеть только зарегистрированные и активированные пользователи]');
except
ShowMessage('Сообщение об ошибке');
end;
FreeAndNil(List);
if pos('Ваше искомое слово', s) <> 0 then ShowMessage('Слово нашлось') else ShowMessage('Слово не нашлось');
end;

но тут просто по кнопке, без мемо и едитов, как бы в коде пишешь то что ищещь и оно говорить если оно там или нету..
А мне нужно с эдитом и мемо, что бы не в коде было написано что ищу а в едите..
вобщем кошмар, не знаю что делать(

Добавлено через 34 минуты
Не получается! (
unit Unit1;

interface

uses
Windows, Messages,id[Ссылки могут видеть только зарегистрированные и активированные пользователи] SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient;

type
TForm1 = class(TForm)
Button1: TButton;
e: TEdit;
m: TMemo;
Id[Ссылки могут видеть только зарегистрированные и активированные пользователи] TId[Ссылки могут видеть только зарегистрированные и активированные пользователи]
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var i: Integer; fName: string; sl: TStringList; b: Boolean;
begin
m.Clear;
if e.Text = '' then
begin
m.Lines.Add('Пустой текст!');
Exit;
end;
fName := 'Test.txt';
if not FileExists(fName) then
begin
m.Lines.Add('Файл не найден!');
Exit;
end;
b := False;
sl:=id[Ссылки могут видеть только зарегистрированные и активированные пользователи]('[Ссылки могут видеть только зарегистрированные и активированные пользователи]');
sl.LoadFromFile(fName);
for i := 0 to sl.Count - 1 do
begin
if Pos(e.Text, sl[i]) <> 0 then
begin
b := True;
Break;
end;
end;
if b then
m.Lines.Add('Текст <' + e.Text + '> в файле найден') else
m.Lines.Add('Текст <' + e.Text + '> в файле НЕ найден');
sl.Free;
end;
end.

Fiery Dragon
21.12.2010, 22:19
тоесть ты вводишь в мемо текст->нажимаешь на кнопку->и тебе выводит результат?
[Ссылки могут видеть только зарегистрированные и активированные пользователи]
вот посмотри программу,так ?

"Unix
21.12.2010, 23:40
Нет) Я ввожу в Edit1 то что хочу проверить Слово цифры символы Жму проверить, оно проверяет в тексте которые лежит рядом с программкой* (а нужно что бы проверяло в тексте который лежит на сайте) и говорит в мемо о результате. Типа
m.Lines.Add('Текст <' + e.Text + '> в файле найден') else
m.Lines.Add('Текст <' + e.Text + '> в файле НЕ найден');

m я позначил мемо

Добавлено через 2 минуты
не смог посмотреть ваш пример
пишет что то с MainFormOnTaskbar

Fiery Dragon
21.12.2010, 23:50
запусти exe файл)там в мемо введи текст который тебе надо,в edit введи адрес файла,а сообщение выдаст в виде окна

перезалил архив,мб не открывалось проект потому что у меня установлен компонент AlphaControl....

"Unix
21.12.2010, 23:56
Дружище я не такой уже и глупый.
при открытии ексешника пишет.
[Ссылки могут видеть только зарегистрированные и активированные пользователи]

Добавлено через 5 минут
Нельзя ли просто в этом коде*
procedure TForm1.Button1Click(Sender: TObject);
var i: Integer; fName: string; sl: TStringList; b: Boolean;
begin
m.Clear;
if e.Text = '' then
begin
m.Lines.Add('Пустой текст!');
Exit;
end;
fName := 'Test.txt';
if not FileExists(fName) then
begin
m.Lines.Add('Файл не найден!');
Exit;
end;
b := False;
sl := TStringList.Create;
sl.LoadFromFile(fName);
for i := 0 to sl.Count - 1 do
begin
if Pos(e.Text, sl[i]) <> 0 then
begin
b := True;
Break;
end;
end;
if b then
m.Lines.Add('Текст <' + e.Text + '> в файле найден') else
m.Lines.Add('Текст <' + e.Text + '> в файле НЕ найден');
sl.Free;
end;
Дописать адрес текста типа [Ссылки могут видеть только зарегистрированные и активированные пользователи]

я просто не знаю как(

Добавлено через 8 минут
у меня AlphaControl кстате тоже установлено..
Fiery Dragon, а где вы перелазили архив?
Есть ли у вас icq может там бы вы мне помоги)

Fiery Dragon
22.12.2010, 00:13
[Ссылки могут видеть только зарегистрированные и активированные пользователи] ([Ссылки могут видеть только зарегистрированные и активированные пользователи])

вот,в едит адрес файла,в мемо текст поиска

"Unix
22.12.2010, 00:16
Супер, тогда возникает вопрос. Как мне открыть исходник?
и можно ли сделать одни адрес проверки
то есть, что бы не нужно было писать не какой адрес - а что бы он был один.
Да и в обще его скрыть, он особо не какой роли не играет.

Добавлено через 4 минуты
То что компилятор говорит:
[Ссылки могут видеть только зарегистрированные и активированные пользователи]

Fiery Dragon
22.12.2010, 00:25
на форме Memo+button


procedure TForm1.btnSendClick(Sender: TObject);
var
List : Tid[Ссылки могут видеть только зарегистрированные и активированные пользователи]
s : String;
begin
List := Tid[Ссылки могут видеть только зарегистрированные и активированные пользователи](nil);
try
s := List.Get('[Ссылки могут видеть только зарегистрированные и активированные пользователи]');
except
ShowMessage('Сообщение об ошибке');
end;
FreeAndNil(List);
if pos(mmText.Text, s) <> 0 then ShowMessage('Слово нашлось')
else ShowMessage('Слово не нашлось');
end;
//где mmText это твоё мемо


всё

Fiery Dragon
22.12.2010, 00:45
это разместить на форму компонент Id[Ссылки могут видеть только зарегистрированные и активированные пользователи]

"Unix
22.12.2010, 00:50
Вобще в шоке!
снова где то ошибка(
[Ссылки могут видеть только зарегистрированные и активированные пользователи]
скрин
Добавил компанент Id[Ссылки могут видеть только зарегистрированные и активированные пользователи] не чего не изменилось