2016-07-30 3 views
0

Я хочу добавить класс для масонства в цикле while.Как добавить класс динамически внутри цикла с помощью asp

Что делать для цикла должно быть только одним?

Выводится три данных три раза.

Есть ли другой способ?

<div id="box-container"> 
<div class="grid-sizer"><!-- avl for packery to get grid size --></div> 
<% 
'creates an array 
Dim x, y, z 
x = Array("w2 h1", "w1 h2", "w1 h1") 

    rso() 
    cate = "fo01" 
    SQL = " SELECT TOP 3 * FROM ms_dbtable WHERE category = '"& cate &"' ORDER BY sort_idx ASC " 
    rs.open SQL, dbcon, 3 
    If Not rs.eof Then 
    While Not rs.EOF 
    For Each y In x 
%> 
<div class='box snip1328 <%=y%>'> 
    <%  If rs("thumb") = "" Then %> 
    <img src="/img/tlogo.gif"></a> 
    <%  Else %> 
    <img src="/data/fo01/<%=rs("thumb")%>"></a> 
    <%  End If %> 
</div> 
<% 
Next 
%> 

<% 
rs.MoveNext 
Wend 
End If 
rsc() 
%> 

<style> 
.w1 {width: 138px;} 
.h1 {height: 138px;} 
.w2 {width: 280px;} 
.h2 {height: 280px;} 
.w3 {width: 422px;} 
.h3 {height: 422px;} 
</style> 

Результат выводится в виде повторяющегося изображения.

Выходные данные имеют размытие изображения лица.

enter image description here

+1

Этот код является сумасшедшим, уязвимым для SQL-инъекций. –

+0

Почему вы знаете почему? – sosori

+0

Из-за этого '' '& cate & "'', но только если переменная 'cate' задается динамически с помощью переменной' Request(). В настоящий момент значение жестко закодировано, поэтому оно достаточно безопасно, хотя я бы не стал слишком комфортным с этим подходом. – Lankymart

ответ

0

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

If Not rs.eof Then 
    Dim xindex : xindex=0 
    While Not rs.EOF 

%> 
<div class='box snip1328 <%=x(xindex)%>'> 
    <%  If rs("thumb") = "" Then %> 
    <img src="/img/tlogo.gif"></a> 
    <%  Else %> 
    <img src="/data/fo01/<%=rs("thumb")%>"></a> 
    <%  End If %> 
</div> 
<% 
    xindex = xindex + 1 
    rs.MoveNext 
    Wend 
End If 
+0

СПАСИБО !! Оно работает! – sosori