1,151

(15 replies, posted in Russian)

agatlogic101 wrote:

То есть видеть когда последний раз менялась дата в таблице

если дата меняется, то это и есть дата смены
или вам нужна предыдущая дата

1,152

(9 replies, posted in Russian)

Petr wrote:

Добрый день!
Подскажите, возможно, и если да то как, реализовать автоматическую отправку смс при сохранении записи в таблице, с данными из определённых полей этой записи?

скажите падробнее что от куда и куда нужно и если есть проек прикрепите

1,153

(11 replies, posted in Russian)

vovka3003 wrote:

Ну так может просто не указана кодировка..?

datainout.SetRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=utf-8');

1,154

(11 replies, posted in Russian)

vovka3003 wrote:

Куда записываются?

в общем вернул запрос на зад в программу - там пусто , а в базу записывается как ????????

1,155

(11 replies, posted in Russian)

я сталкнулся с проблемой шифрования,  кириллические символы записываются как ?????

1,156

(11 replies, posted in Russian)

спасибо!
с кадированием разобрался, получилось так

http.send('password='+HttpEncode(p)+'&login='+HttpEncode(frmAdmin.eloginst.Text)+'&pass='+HttpEncode(frmAdmin.ePass.Text)+'&sservice='+HttpEncode(frmAdmin.eIdService.Text)+'');

тоесть кадирается не вся строка запроса а только данные..

1,157

(11 replies, posted in Russian)

vovka3003 wrote:

А вот это:

'&firstnameapp='+sqlexecute('SELECT firstNameClient FROM servise WHERE id='+list[i])+
  '&lastnameapp='+sqlexecute('SELECT lastNameClient FROM servise WHERE id='+list[i])+
  '&telephonapp='+sqlexecute('SELECT telephonClient FROM servise WHERE id='+list[i])+
vovka3003 wrote:

Это еще так себе (тип объявлен в Content-Type)

application/x-www-form-urlencoded: значения кодируются в кортежах с ключом, разделенных символом '&', с '=' между ключом и значением..

просто передаю значения сразу как мне нужно.. не думаю, что это как-то плохо..


vovka3003 wrote:

Если комп живет в аптайме без перезагрузки (спячка, ждущий режим), то после прыжка через порог в 49,7 дней цикл прекратится через еще 49,7 дней и одну миллисекунду (или через убийство процесса в диспетчере задач wink ).
MilliSecondsBetween в помощь.

Можно этот момент по подробнее? просто уже не раз запускал на пк и ни какой нагрузки не ощущал с учетом того, что пк уже две недели не выключается..

1,158

(11 replies, posted in Russian)

странно но  GET вообще не хочет работать а POST работает без проблем

Но все равно спасибо , ваш вариант мне помог, плюс теперь присутствует...
 
поробую отдельно проект сделать с GET запросом, посмотрю, что и как..
но насколько я понимаю
GET - это чтобы получить определенную страницу в определенном виде ( сортировка, текущая страница в блоге, строка поиска и т.п. ).
POST - для оправки данных которые не влияют на отображение страницы, в том плане что эти данные влияют только на результат выполнения скрипта ( логины, пароли, номера кредиток, сообщения и т.п. ).

1,159

(4 replies, posted in Script)

OK

1,160

(11 replies, posted in Russian)

DriveSoft wrote:

Т.е. вопрос решен?

нет не решен... мне нужен решить вопрос с запросом в котором изчезает +

1,161

(4 replies, posted in Script)

???? tell me more precisely

1,162

(11 replies, posted in Russian)

в общем в данном запросе + из текста пропадает

procedure datainapp;
var
i,c,a:integer;
d:integer = 20000;
list:TStringList;
url: string = 'https://service-vv.ru/rest_api/data_in.php';
Tlogin:TIniFile;
begin
 a := GetTickCount;
 Tlogin:=TIniFile.Create(ExtractFilePath (ParamStr (0))+'setting\online.ini');
 list:=TStringList.Create;
 list.Text:= SQLExecute( 'SELECT group_concat(id, char(13) || char(10)) FROM servise WHERE appUpdate=1' );
 c:=list.Count-1;
 datainout:=createoleobject('WinHttp.WinHttpRequest.5.1');
 timerDataInout:=TTimer.Create(frmLogin);
 timerDataInout.Enabled:=True;
 timerDataInout.Interval:=1000;
 timerDataInout.OnTimer:=@SDataApp;
 for i:=0 to c do
  begin
  datainout.open('POST', url, True);
  datainout.SetRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  datainout.send('password='+
  '&login='+Tlogin.ReadString('online','login','')+'&pass='+Tlogin.ReadString('online','password','')+
  '&sservice='+Tlogin.ReadString('online','IDService','')+'&idapp='+list[i]+
  '&firstnameapp='+sqlexecute('SELECT firstNameClient FROM servise WHERE id='+list[i])+
  '&lastnameapp='+sqlexecute('SELECT lastNameClient FROM servise WHERE id='+list[i])+
  '&telephonapp='+sqlexecute('SELECT telephonClient FROM servise WHERE id='+list[i])+
  '&dateapp='+sqlexecute('SELECT dateApplcation FROM servise WHERE id='+list[i])+
  '&timeapp='+sqlexecute('SELECT timeApplication FROM servise WHERE id='+list[i])+
  '&descriptionapp='+sqlexecute('SELECT descriptionATCsWords FROM servise WHERE id='+list[i])+'');
repeat
     Application.ProcessMessages;
     if SDataApp(list[i])then begin
      SQLExecute('UPDATE servise SET appUpdate="0" WHERE id = '+list[i]);
     break;
     end;
   until (GetTickCount - a) >= d;
  end;
  timerDataInout.Enabled:=False;
  dataoutapp;
end;

а в этом запросе плюс остается

procedure frmEditUser_bEditUser_OnClick (Sender: TObject; var Cancel: boolean);
var
slParam: TStringList;
idusers:integer;
begin
if  frmAdmin.tgUserApp.SelectedRow >-1   then begin
     idusers:= frmAdmin.tgUserApp.SelectedRow;
     try
      slParam := TStringList.Create;
      slParam.Add('password=;
      slParam.Add('idusers='+frmAdmin.tgUserApp.Cells[0,idusers]);
      slParam.Add('login='+frmEditUser.eLogin.Text);
      slParam.Add('pass='+frmEditUser.ePassword.Text);
      slParam.Add('firstname='+frmEditUser.eFirstName.Text);
      slParam.Add('lastname='+frmEditUser.eLastName.Text);

      slParam.text:= HTTPPost('https://service-vv.ru/rest_api/edit_user.php',slParam);

       if Pos('0', slParam.text) > 0  then Showmessage('Ошибка обработки запроса!')else
       if Pos('-2',  slParam.text) > 0  then Showmessage('Ошибка передачи даных!')else
       if Pos('-1',  slParam.text) > 0  then Showmessage('Ошибка редактирования!')else
       if Pos('1',  slParam.text) > 0  then begin

       userall;
       Showmessage('Данные пользователя изминены');
       frmEditUser.Close;
       end;
      except
   end;
    end else
  Showmessage('Запись не выбрана!');
end;

1,163

(11 replies, posted in Russian)

в общем проблема такая при передаче параметров  в php пропадает плюс, не зависимо где в тексте он находится все символы присутствуют а плюса нет...

  datainout.open('POST', url, True);
  datainout.SetRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  datainout.send('password=PiBqzRAUwG$m8oFe0'+
  '&login='+Tlogin.ReadString('online','login','')+'&pass='+Tlogin.ReadString('online','password','')+
  '&sservice='+Tlogin.ReadString('online','IDService','')+'&idapp='+list[i]+
  '&firstnameapp='+sqlexecute('SELECT firstNameClient FROM servise WHERE id='+list[i])+
  '&lastnameapp='+sqlexecute('SELECT lastNameClient FROM servise WHERE id='+list[i])+
  '&telephonapp='+sqlexecute('SELECT telephonClient FROM servise WHERE id='+list[i])+
  '&dateapp='+sqlexecute('SELECT dateApplcation FROM servise WHERE id='+list[i])+
  '&timeapp='+sqlexecute('SELECT timeApplication FROM servise WHERE id='+list[i])+
  '&descriptionapp='+sqlexecute('SELECT descriptionATCsWords FROM servise WHERE id='+list[i])+'');

грешу на скрипт.. так как проверил несколько раз php, он уже принимает текст без символа +

1,164

(8 replies, posted in Russian)

form1.Edit2.text:= FloatToStr(Int(form1.Edit1.Value));
form1.Edit2.text:= FloatToStr(Frac(form1.Edit1.Value));
form1.Edit2.text:= IntToStr(Trunc(form1.Edit1.Value)); 

во всех вариантах аозвращается ноль..

1,165

(8 replies, posted in Russian)

+IntToStr(Trunc(frmAddSch1.Edit1.Value) - StrToInt(vyrab_otp))+

вот тут попробуйте без получения в целочисленной части числа..
Trunc делает ноль
 
Да можно

if (условие 1) AND (условие 2) then r:=1 else r:=0;

а в записи используйте переменную +r+

1,166

(10 replies, posted in Russian)

профиль - контакты- Эл. почта
   
писать можно и на форуме.. я уже на днях выложу на форум результат... там готовый проек будет..  в проекте есть текие варианты..
асинхронность
создание - редактирование - удаление пользователей
формирование таблицы из полученных данных от удаленной БД..
автоматическое создние таблиц полей и связей по мере обращения к БД..
и.ТД
в работе использовал REDBEANPHP

1,167

(10 replies, posted in Russian)

тоже самое искал и я, но скажу Вам,  облако - это очень дорого..
я работаю на jino.. работу с базой можно реализовать  с прямым подключение или открыть доступ всем ip.. но если  покупать вертуалку то все равно все в купе бедут дорого..
потому я делаю это при помоще php..

http://myvisualdatabase.com/forum/viewtopic.php?id=5089

1,169

(4 replies, posted in General)

manixs2013 wrote:

How can i call this function to USB

frmRoute.MapRoute.LoadGPSRoute(' ', clRed, 2, True);

frmRoute.MapRoute.LoadGPSRoute('c:\xxxGPXfiles\quiraing.gpx', clRed, 2, True);

procedure Form1_Button1_OnClick (Sender: TObject; var Cancel: boolean);
var
  OpenDialog : TOpenDialog;
begin
   OpenDialog := TOpenDialog.Create(Form1);
   IF OpenDialog.execute then
   begin
      Form1.Map1.LoadGPSRoute(OpenDialog.Filename, clRed, 2, True);
   end;
   OpenDialog.Free;
end;

нужен пример... на что материться сама программа

1,171

(4 replies, posted in General)

procedure Form1_Button1_OnClick (Sender: TObject; var Cancel: boolean);
var
  OpenDialog : TOpenDialog;
begin
   OpenDialog := TOpenDialog.Create(Form1);
   IF OpenDialog.execute then
   begin
      ShowMessage(OpenDialog.Filename);
   end;
   OpenDialog.Free;
end;

1,172

(5 replies, posted in General)

domebil wrote:

it does not work

Mail&SerialPHP
http://myvisualdatabase.com/forum/viewtopic.php?id=5086

1,173

(2 replies, posted in Talks about all)

точно... забыл

1,174

(2 replies, posted in Russian)

DriveSoft wrote:

Можете воспользоваться таймером (TTimer), задав ему необходимый интервал.

вот-так все заработало как нужно

procedure datainapp;
var
i,c,a:integer;
d:integer = 20000;
list:TStringList;
url: string = 'https://гк.php';
Tlogin:TIniFile;
begin
 a := GetTickCount;
 Tlogin:=TIniFile.Create(ExtractFilePath (ParamStr (0))+'setting\online.ini');
 list:=TStringList.Create;
 list.Text:= SQLExecute( 'SELECT group_concat(id, char(13) || char(10)) FROM servise WHERE appUpdate=1' );
 c:=list.Count-1;
 datain:=createoleobject('WinHttp.WinHttpRequest.5.1');
 timerDataIn:=TTimer.Create(frmLogin);
 timerDataIn.Enabled:=True;
 timerDataIn.Interval:=1000;
 timerDataIn.OnTimer:=@SDataApp;
 for i:=0 to c do
  begin
  datain.open('POST', url, True);
  datain.SetRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  datain.send('passwor=678'+
  '&login='+Tlogin.ReadString('online','login','')+'&pass='+Tlogin.ReadString('online','password','')+
  '&sservice='+Tlogin.ReadString('online','IDService','')+'&idapp='+list[i]+
  '&firstnameapp='+sqlexecute('SELECT firstNameClient FROM servise WHERE id='+list[i])+
  '&lastnameapp='+sqlexecute('SELECT lastNameClient FROM servise WHERE id='+list[i])+
  '&telephonapp='+sqlexecute('SELECT telephonClient FROM servise WHERE id='+list[i])+
  '&dateapp='+sqlexecute('SELECT dateApplcation FROM servise WHERE id='+list[i])+
  '&timeapp='+sqlexecute('SELECT timeApplication FROM servise WHERE id='+list[i])+
  '&descriptionapp='+sqlexecute('SELECT descriptionATCsWords FROM servise WHERE id='+list[i])+'');
  repeat
     Application.ProcessMessages;
     if SDataApp(list[i])then begin
      SQLExecute('UPDATE servise SET appUpdate="0" WHERE id = '+list[i]);
     break;
     end;
   until (GetTickCount - a) >= d;
  end;
  timerDataIn.Enabled:=False
end; 

1,175

(2 replies, posted in Russian)

нужна пауза в цикле

sleep тормазить всю программу