Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 07.12.2009, 10:50   #21
KREGI
Форумчанин
 
Аватар для KREGI
 
Регистрация: 29.11.2008
Сообщений: 333
По умолчанию

Utkin, не понимаю почему тогда этот же код работал... Ладно щас придумаю что нить.

Спасибо Вам всем за помощь.
Мораль - не пишите с просони ))
Если помог - Весы слева
KREGI вне форума
Старый 07.12.2009, 13:27   #22
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Utkin, в данном случае то, что Edit1.Text - это свойство - никак не влияет!!
я на 99% уверен, что ошибка в чём то другом!!!!

вот 100% рабочий код!
Код:
var v : string;
begin
  v := Edit1.Text;
  if pos(Edit1.Text, v)<>0 then
    Edit1.Text := 'тест1!'
  else
    Edit1.Text := 'тест2!';
end;
KREGI, дай завершённый кусок кода, посмотрим...
Serge_Bliznykov вне форума
Старый 07.12.2009, 13:30   #23
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Utkin, в данном случае то, что Edit1.Text - это свойство - никак не влияет!!
я на 99% уверен, что ошибка в чём то другом!!!!

вот 100% рабочий код!
Код:
var v : string;
begin
  v := Edit1.Text;
  if pos(Edit1.Text, v)<>0 then
    Edit1.Text := 'тест1!'
  else
    Edit1.Text := 'тест2!';
end;
KREGI, дай завершённый кусок кода, посмотрим...
Возможно. Дело в автопреобразовании. Чтобы таких ошибок не возникало нужно использовать промежуточную переменную и никаких проблем. Повторюсь, у меня такие заклины тоже были и формально Дельфи права.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума
Старый 07.12.2009, 15:10   #24
KREGI
Форумчанин
 
Аватар для KREGI
 
Регистрация: 29.11.2008
Сообщений: 333
По умолчанию

Код:
v:=IdHTTP1.Post('http://site.ru/login.php',SL);
 if Pos(Edit1.Text,v)<>0
 then
  begin
  Memo1.Lines.Add('Вошли');
  Form1.Visible:=False;
  Application.CreateForm(TForm2, Form2);
  Form2.Visible:=True;
  end
 else Memo1.Lines.Add('Не вошли');
Это проверка авторизации на сайте. раньше работала.
Если помог - Весы слева
KREGI вне форума
Старый 07.12.2009, 15:38   #25
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

А переменная V значение получает?
mihali4 вне форума
Старый 07.12.2009, 16:14   #26
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от mihali4
А переменная V значение получает?
+1

KREGI
да, вроде бы всё пристойно!
А эта конструкция не компилится или не работает?!
если компилится - так поставьте точку останова и посмотрите, что там в переменной v получается!
Serge_Bliznykov вне форума
Старый 07.12.2009, 16:23   #27
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
KREGI
Научись работать с отладчиком.
Что мешает поставить breakpoint на if Pos(Edit1.Text,v)<>0
и посмотреть чему равны параметры?
I'm learning to live...
Stilet вне форума
Старый 07.12.2009, 16:41   #28
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

ребята, стоп.

Креги, в коде поста №24 выдели строки где ошибки, и напиши их как комментарий.

в Pos можно пихать св-ва.
так как там не var параметры.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума
Старый 07.12.2009, 18:14   #29
KREGI
Форумчанин
 
Аватар для KREGI
 
Регистрация: 29.11.2008
Сообщений: 333
По умолчанию

Код:
v:=IdHTTP1.Post('http://site.ru/login.php',SL);
 if Pos(Edit1.Text,v)<>0 //при компиляции после первой скобки ошибка [Error] Unit2.pas(52): Missing operator or semicolon ,так же эта же ошибка везде где есть pos 
 then
  begin
  Memo1.Lines.Add('Вошли');
  Form1.Visible:=False;
  Application.CreateForm(TForm2, Form2);
  Form2.Visible:=True;
  end
 else Memo1.Lines.Add('Не вошли');
Так эта же ошибка есть во всех строках где есть pos.
Если помог - Весы слева

Последний раз редактировалось KREGI; 07.12.2009 в 18:19.
KREGI вне форума
Старый 07.12.2009, 22:57   #30
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

1)
"меня терзают смутные сомнения..."
а уж не переопределили ли Вы, вольно или невольно функцию Pos ?!!
для проверки правой мышкой на слово Pos и выберите верхний пунктик "Find declaration"... Если открылся модуль SYSTEM значит моё предположение неверно,
если любой другой (особенно Ваш) - разбирайтесь, кто посмел своей функции дать такое же имя, как системной функции!
Кстати, когда набираете Pos( и нажимаете Ctrl-Shift-Пробел
что видите? Должно быть хинтик: "Substr: string; S: string"

2) если вышесказанное не подтвердится, тогда, что, если в месте, где выдаётся ошибка
заменить на такой вариант:
if Pos(' ',v)<>0 then
а на такой ?
if Pos(Edit1.Text,'-')<>0 then
а на такой ?
if Pos('test','-')<>0 then

я прямо теряюсь в догадках.. ;(

p.s. может сделаете малюсенький тестовый проект с ошибкой компиляции, запакуете и выложите сюда, на форум?..
Serge_Bliznykov вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
функция Pos в Delphi Fantom Помощь студентам 8 04.05.2012 18:56
что будет возвращать функция при различных pos vasyapupkin Общие вопросы C/C++ 4 03.11.2009 20:48
функция pos drumerbaker Помощь студентам 6 17.05.2009 15:52
ошибка с POS Romer9999 Общие вопросы Delphi 5 18.02.2009 22:28
pos и copy zotox Помощь студентам 1 23.10.2008 21:13