ton of annoying string workaround stuff
This commit is contained in:
parent
e56dad405c
commit
959234ca0e
|
@ -58,54 +58,74 @@ contains
|
||||||
character, dimension(:), allocatable, intent(in) :: request
|
character, dimension(:), allocatable, intent(in) :: request
|
||||||
integer, intent(in) :: length
|
integer, intent(in) :: length
|
||||||
|
|
||||||
character(len=:), allocatable :: command
|
integer :: i, j, s_idx, e_idx, username_len, password_len
|
||||||
|
character(len=24) :: username
|
||||||
|
character(len=24) :: password
|
||||||
character(len=32) :: created
|
character(len=32) :: created
|
||||||
integer :: i, s_u_idx, e_u_idx, s_p_idx, e_p_idx, s_a_idx
|
character(len=8) :: appearance
|
||||||
|
logical :: start = .false.
|
||||||
|
|
||||||
|
character(len=:), allocatable :: command
|
||||||
|
|
||||||
|
j = 1
|
||||||
get_username: do i = 1, length
|
get_username: do i = 1, length
|
||||||
if (request(i) .eq. '=') then
|
if (request(i) .eq. '=') then
|
||||||
s_u_idx = i + 1
|
s_idx = i + 1
|
||||||
|
start = .true.
|
||||||
end if
|
end if
|
||||||
|
|
||||||
if (request(i) .eq. '&') then
|
if (request(i) .eq. '&') then
|
||||||
e_u_idx = i - 1
|
e_idx = i - 1
|
||||||
|
start = .false.
|
||||||
exit get_username
|
exit get_username
|
||||||
end if
|
end if
|
||||||
end do get_username
|
|
||||||
! username = transfer(request(s_idx:e_idx), username)
|
|
||||||
|
|
||||||
get_password: do i = e_u_idx + 2, length
|
if (start) then
|
||||||
|
username(j:j) = request(i + 1)
|
||||||
|
j = j + 1
|
||||||
|
end if
|
||||||
|
end do get_username
|
||||||
|
username_len = j-2
|
||||||
|
|
||||||
|
j = 1
|
||||||
|
get_password: do i = e_idx + 2, length
|
||||||
if (request(i) .eq. '=') then
|
if (request(i) .eq. '=') then
|
||||||
s_p_idx = i + 1
|
s_idx = i + 1
|
||||||
|
start = .true.
|
||||||
end if
|
end if
|
||||||
|
|
||||||
if (request(i) .eq. '&') then
|
if (request(i) .eq. '&') then
|
||||||
e_p_idx = i - 1
|
e_idx = i - 1
|
||||||
|
start = .false.
|
||||||
exit get_password
|
exit get_password
|
||||||
end if
|
end if
|
||||||
end do get_password
|
|
||||||
! password = transfer(request(s_idx:e_idx), password)
|
|
||||||
|
|
||||||
get_appearance: do i = e_p_idx + 2, length
|
if (start) then
|
||||||
|
password(j:j) = request(i + 1)
|
||||||
|
j = j + 1
|
||||||
|
end if
|
||||||
|
end do get_password
|
||||||
|
password_len = j-2
|
||||||
|
|
||||||
|
get_appearance: do i = e_idx + 2, length
|
||||||
if (request(i) .eq. '=') then
|
if (request(i) .eq. '=') then
|
||||||
s_a_idx = i + 1
|
s_idx = i + 1
|
||||||
end if
|
end if
|
||||||
end do get_appearance
|
end do get_appearance
|
||||||
! appearance = transfer(request(s_a_idx:length), appearance)
|
appearance = transfer(request(s_idx:length), appearance)
|
||||||
|
|
||||||
write (created, *) time()
|
write (created, *) time()
|
||||||
|
|
||||||
command = 'sqlite3 ' &
|
command = 'sqlite3 '//db_path(:Len_Trim(db_path)) &
|
||||||
//trim(adjustl(db_path)) &
|
|
||||||
//' "INSERT INTO users (username,password' &
|
//' "INSERT INTO users (username,password' &
|
||||||
//',apperance,x_pos,y_pos,last_login,created) VALUES (''' &
|
//',apperance,x_pos,y_pos,last_login,created) VALUES (''' &
|
||||||
//request(s_u_idx:e_u_idx) &
|
// username(:username_len) &
|
||||||
//''',''' &
|
//''',''' &
|
||||||
//request(s_p_idx:e_p_idx) &
|
// password(:password_len) &
|
||||||
//''',''' &
|
//''',''' &
|
||||||
//request(s_a_idx:length) &
|
// appearance(:Len_Trim(appearance)) &
|
||||||
//''',0,0,0,' &
|
//''',0,0,0,' &
|
||||||
//created//');"'
|
//created(:Len_Trim(created))//');"'
|
||||||
write (12, *) command
|
write (12, *) command
|
||||||
call execute_command_line(command)
|
call execute_command_line(command)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue