Исправить кнопку повтора области только для первой записи - PullRequest
0 голосов
/ 23 мая 2019

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

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

Независимо от того, сколько товаров отображается на странице, единственный продукт, который обновляется или удаляется, - это первый товар, отображаемый из набора повторных кодов.

Пожалуйста, смотрите код ниже:

<% 
While ((Repeat1__numRows <> 0) AND (NOT Recordset1.EOF)) 
%>
<form action="<%=MM_editAction%>" METHOD="POST" name="form1">
<tr>
<td class="image">
  <a href="shop.asp?sku=<%=Recordset1.Fields("sku")%>&sessionx=   <%=Recordset1.Fields("sessionx")%>"> <img class="img-fluid" src="<%=(Recordset1.Fields.Item("image").Value)%>" alt=""/></a>
</td>
<td class="description">
   <a href="shop.asp?sku=<%=Recordset1.Fields("sku")%>&sessionx=<%=Recordset1.Fields("sessionx")%>"><%=(Recordset1.Fields.Item("name").Value)%></a>
</td>
<td class="price"> £<%=(Recordset1.Fields.Item("totalprice").Value)%></td>
<td class="td-quentety">
  <input type="number" value=" <%=(Recordset1.Fields.Item("qty").Value)%>" name="qty">

</td>
<td class=""><a class="button mt-10" href="#"  onclick="document.forms['form1'].submit(); return false;">Update</a>
  <input type="hidden" name="MM_update" value="form1">
  <input type="hidden" name="MM_recordId" value="<%=  Recordset1.Fields.Item("idx").Value %>">
</form>
</td>
<form ACTION="<%=MM_editAction%>" METHOD="POST" name="form2">
<td class=""><a class="button mt-10" href="#" onclick="document.forms['form2'].submit(); return false;">Remove</a></td>
</tr>
<input type="hidden" name="MM_delete" value="form2">
<input type="hidden" name="MM_recordId" value="<%=   Recordset1.Fields.Item("idx").Value %>">
</form>
<% 
Repeat1__index=Repeat1__index+1
Repeat1__numRows=Repeat1__numRows-1
Recordset1.MoveNext()
Wend
%>` 

ASP код

<%
' IIf implementation
Function MM_IIf(condition, ifTrue, ifFalse)
If condition = "" Then
MM_IIf = ifFalse
Else
MM_IIf = ifTrue
End If
End Function
%>
<%
If (CStr(Request("MM_update")) = "form1") Then
If (Not MM_abortEdit) Then
' execute the update
Dim MM_editCmd

Set MM_editCmd = Server.CreateObject ("ADODB.Command")
MM_editCmd.ActiveConnection = MM_Conn01_STRING
MM_editCmd.CommandText = "UPDATE lee2121.Cart SET qty = ? WHERE idx =     ?" 
MM_editCmd.Prepared = true
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param1", 5, 1, -1, MM_IIF(Request.Form("qty"), Request.Form("qty"), null)) ' adDouble
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param2", 5, 1, -1, MM_IIF(Request.Form("MM_recordId"), Request.Form("MM_recordId"), null))     ' adDouble
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close
End If
End If
%>
<%
' *** Delete Record: construct a sql delete statement and execute it

If (CStr(Request("MM_delete")) = "form2" And     CStr(Request("MM_recordId")) <> "") Then

If (Not MM_abortEdit) Then
' execute the delete
Set MM_editCmd = Server.CreateObject ("ADODB.Command")
MM_editCmd.ActiveConnection = MM_Conn01_STRING
MM_editCmd.CommandText = "DELETE FROM lee2121.Cart WHERE idx = ?"
MM_editCmd.Parameters.Append MM_editCmd.CreateParameter("param1", 5, 1, -1, Request.Form("MM_recordId")) ' adDouble
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close
End If

End If
%>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...