Классический ASP Script не возвращает значение в ELSE - PullRequest
1 голос
/ 11 октября 2011

Первый постер и довольно новый для программирования ASP.

Я пытаюсь добавить функциональность, которая проверяет, является ли поле пустым, если да, возвращает заданное значение.Вот что я получил до сих пор:

'rsGlobalWeb is basicly declared the same as rsBackup just in a different asp file with also the db connection.
<%  If rsGlobalWeb("Serial") <> "" Then
        response.write("<td>" & rsGlobalWeb("Serial") & "</td>")
    Else
        SqlBackup = "SELECT * FROM CMDBbackup WHERE Naam_Cattools = '" &     rsGlobalWeb("Device_name") & "'" 
        Set rsBackup = Server.CreateObject("ADODB.Recordset")
        rsBackup.Open SqlBackup, dbGlobalWeb, 3
        If Not rsBackup.EOF Then
            If Not IsNull(rsBackup("Serial")) And (rsBackup("Serial") <> "")     Then     
                response.write("<td>" & rsBackup("Serial") & " (backup)</td>")
            Else
                response.write("<td>No historical data found</td>")
            End if
        End if
    End if
%>

Теперь о проблеме: когда в резервной базе данных есть значение, оно показывает это значение в сочетании с «(резервной копией)» позади него.Так что это работает нормально.Проблема в том, что когда значение не найдено, оно ничего не возвращает.

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

Заранее спасибо,

Эрик

1 Ответ

1 голос
/ 11 октября 2011

Ваши операторы Response.Write заключены в оператор If Not rsBackup.EOF Then.

Ничего не будет написано, если в rsBackup.

нет записей.
...