добавление двух итеративных значений в запрос на обновление asp-classic - PullRequest
0 голосов
/ 25 апреля 2019

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

У меня есть 2d массив из моего sqlDB на один столбец

myList = rs.GetRows()

У меня есть HTML-страница с входами, основанными на длинемой массив.:

<input type="number" name="actual"> 

Теперь я пытаюсь создать уникальный запрос на обновление SQL, в котором фактический столбец соответствует столбцу unique_id

. Предположим, в моем списке только две переменные.,

for each x in my list
 response.write(x)
1,
2

и есть только два входа, поскольку входы генерируются уникальным идентификатором

for inputs in response.form("actual")
 response.write(inputs)
55,
66

, теперь я хочу объединить их для создания моего запроса на обновление.

Я пытался написать двойной цикл for, но при этом генерируется идентификатор для каждого экземпляра ввода, поэтому создается 4 переменные вместо 2

 Unique ID, Input
    1 : 55
    1 : 66
    2 : 55
    2 : 66

, что я хотел бы получить

1 : 55
2 : 66

кто-нибудь может помочь?Я был в этом часами.Я не программист и не имею технического опыта, и я по колено в устаревших системах и процессах.

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

HTML-код для создания моей таблицы:

  <div class="container">
              <table id="table" class="table">
                <thead class="thead-dark">
                  <tr>
                  <th scope="col" data-field="article">Unique ID</th>
                  <th scope="col" data-field="item">Item Name</th>
                  <th scope="col" data-field="quant">Quantity</th>
                  <th scope="col" data-field="act">Actual</th>
              </tr>
              </tr>
            </thead>
            </div>

           <%
           While not grs.eof
          %>
            <tr>
                <th><%=grs.fields("UniqueID")%></th>
                <th><%=grs.fields("itemName")%></th>
                <th><%=grs.fields("quant")%></th>
                <input type="number" class="form-control" id="actual" placeholder="<%=grs.fields("actual")%>" name="Actual">

            <%

            grs.movenext
            Wend
SQL update query goes here %>

1 Ответ

1 голос
/ 25 апреля 2019

Хорошо, мелочь здесь:

Ваш идентификатор не может быть одинаковым для каждой строки, поэтому сделайте что-то вроде id=actual_<%=grs.fields("UniqueID")%>

Вы можете попробовать это:

<input type="number" class="form-control" id="actual_<%=grs.fields("UniqueID")%>" placeholder="<%=grs.fields("actual")%>" name="actual_<%=grs.fields("UniqueID")%>">

А потом в вашем цикле:

for each inputs in request.form
   if left(inputs, 7) = "actual_" then
      myId = mid(inputs, 8)
      myValue = request.form("actual_" & myId)

      <your sql statement here>
   end if
next

(Вам нужно будет что-то добавить, чтобы проверить, что имя проверяемого входа имеет длину не менее 7 символов, иначе вы получите ошибку)

...