20 очень полезных примеров программирования ASP (1)
1. Как использовать ASP для определения виртуального физического пути вашего веб-сайта.
Ответ: Используйте метод Mappath: < %= Server.MapPath(/)% >
2. Как узнать, какой браузер использует пользователь?
Ответ: Используйте метод объекта Request:
<%
strBrowser=Request.ServerVariables(HTTP_USER_AGENT)
Если Instr(strBrowser,MSIE) < > 0 Тогда
Response.redirect(formSIEOnly.htm)
Еще
Response.redirect(ForAll.htm)
Конец, если
%>
3. Как рассчитать среднее количество повторных посетителей в день
Ответ: Решение
< % startdate=DateDiff(д, сейчас, 01.01.1990)
если strdate< 0, то startdate=startdate*-1
avgvpd=Int((usercnt)/startdate) % >
Показать результаты
< % response.write(avgvpd) % >
вот и все. эта страница просматривалась с 10 ноября 1998 г.
4. Как отображать случайные изображения
<% dim p,ppic,dpic
ппик=12
рандомизировать
p=Int((ppic*rnd)+1)
dpic=graphix/randompics/&p&.gif
%>
показывать
< img src=< %=dpic% > >
5.Как вернуться на предыдущую страницу
Ответ: < a href=< %=request.serverVariables(Http_REFERER)% > >предыдущая страница</a >
Или используйте изображение, например: < img src=arrowback.gif target='_blank'> Если сервер работает и на нем может отображаться диалоговое окно, то вам придется подождать, пока кто-нибудь не нажмет кнопку ОК, прежде чем ваша программа сможет это сделать. продолжить выполнение. Как правило, сервер не будет охраняться, поэтому Microsoft придется отключить эту функцию и случайно сообщить вам (ха-ха), что у вас нет разрешения. Однако комбинация ASP и клиентского сценария может отображать следующее диалоговое окно:
<%yourVar=Тестовый диалог%>
Легкий дождь здесь
11. Есть ли способ защитить ваш исходный код от просмотра другими?
Ответ: Вы можете загрузить кодировщик сценариев Microsoft Windows, который может шифровать сценарии asp и сценарии javascript/vbscript на стороне клиента. . . Однако после шифрования клиента его может выполнить только ie5. После шифрования серверного сценария его можно выполнить только в том случае, если на сервере установлен скриптовый механизм 5 (просто установите ie5).
12.Как перенести строку запроса из одного файла asp в другой?
Ответ: Добавьте в предыдущий файл следующее предложение: Response.Redirect( Second.asp? & Request.ServerVariables(QUERY_STRING))
Файл 13.global.asa всегда не работает?
Ответ: Global.asa действителен только в том случае, если в качестве веб-каталога установлено веб-приложение, а global.asa действителен в корневом каталоге веб-приложения. IIS4 может использовать диспетчер служб Интернета для установки параметров приложения. Как заставить файл htm выполнять код сценария, как файл asp?
14. Как заставить файл htm выполнять код сценария так же, как файл asp?
Ответ: Диспетчер интернет-служб -> выберите веб-сайт по умолчанию -> правая кнопка мыши -> свойства меню -> домашний каталог -> настройки приложения (настройки приложения) -> нажмите кнопку «Конфигурация» -> «Сопоставление приложения» -> нажмите кнопку «Добавить» -> «Обзор исполняемого файла». выберите /WINNT/SYSTEM32/INETSRV/ASP.DLL РАСШИРЕНИЕ, введите исключения методов htm, введите PUT.DELETE и подтвердите все. Однако стоит отметить, что htm также будет обрабатываться asp.dll, и эффективность снизится.
15.Как зарегистрировать компоненты
Ответ: Есть два метода.
Первый метод: зарегистрировать DLL вручную. Этот метод использовался в версиях от IIs 3.0 до IIs 4.0 и других веб-серверах. Требуется выполнить его в режиме командной строки, войти в каталог, содержащий DLL, и ввести: regsvr32 имя_компонента.dll. Например, c:/temp/regsvr32 AspEmail.dll. Он зарегистрирует конкретную информацию о dll. реестр на сервере. Затем компонент можно будет использовать на сервере, но в этом подходе есть недостаток. После регистрации компонента с помощью этого метода компонент должен соответствующим образом настроить анонимную учетную запись NT, чтобы иметь разрешение на выполнение библиотеки dll. В частности, некоторым компонентам необходимо читать реестр, поэтому этот метод регистрации компонентов используется только в том случае, если на сервере нет MTS. Чтобы отменить регистрацию dll, используйте: regsvr32 /u aspobject.dll, пример c:/temp/regsvr32/. uaeiodbc.dll
Второй метод: используйте MTS (Microsoft Transaction Server). MTS — это новая функция IIS 4, но она обеспечивает огромные улучшения. MTS позволяет указать, что только привилегированные пользователи могут получить доступ к компонентам, что значительно улучшает настройки безопасности на сервере веб-сайта. Действия по регистрации компонента на МТС следующие:
1) Откройте консоль управления IIS.
2) Разверните сервер транзакций, щелкните правой кнопкой мыши установленные пакеты и выберите новый пакет.
3) Нажмите создать пустой пакет.
4) Назовите пакет.
5) Укажите учетную запись администратора или используйте интерактив (если часто заходите на сервер под администратором).
6) Теперь щелкните правой кнопкой мыши развернутые компоненты под только что созданным пакетом. Выберите новый, затем компонент.
7) Выберите «Установить новый компонент».
Найдите свой файл .dll и нажмите «Далее», чтобы закончить.
Чтобы удалить этот объект, просто выберите его значок, а затем выберите «Удалить».
Примечание. Обратите особое внимание на второй метод: это лучший способ отладки написанных вами компонентов без необходимости каждый раз перезапускать компьютер.
16. Подключение к базе данных ASP и Access:
<%@ язык=VBscript%>
<%
тусклый конн, mdbfile
mdbfile=server.mappath(имя базы данных.mdb)
set conn=server.createobject(adodb.connection)
conn.open driver={драйвер доступа Microsoft (*.mdb)};uid=admin;pwd=пароль базы данных;dbq=&mdbfile
%>
17. Подключение к базе данных ASP и SQL:
<%@ язык=VBscript%>
<%
тусклый контакт
set conn=server.createobject(ADODB.connection)
con.open PROVIDER=SQLOLEDB;DATA SOURCE=имя или IP-адрес SQL-сервера;UID=sa;PWD=пароль базы данных;DATABASE=имя базы данных
%>
Создайте объект набора записей:
<%
установите rs=server.createobject(adodb.recordset)
оператор rs.open SQL,conn,3,2
%>
18. Как использовать распространенные команды SQL:
(1) Проверка записи данных:
sql=select * из таблицы данных, где имя поля = порядок значений поля по имени поля [дескриптор]
sql=select * из таблицы данных, где имя поля, например '%field value%', упорядочивается по имени поля [дескриптор]
sql=выбрать первые 10 * из таблицы данных, где имя поля упорядочивается по имени поля [дескриптор]
sql=select * из таблицы данных, где указано имя поля («значение 1», «значение 2», «значение 3»)
sql=select * из таблицы данных, где имя поля между значением 1 и значением 2
(2) Обновление записи данных:
sql=обновить набор таблиц данных, имя поля=значение поля, где условное выражение
sql = набор таблиц данных обновления, поле 1 = значение 1, поле 2 = значение 2... поле n = значение n, где условное выражение
(3) Удалить записи данных:
sql=удалить из таблицы данных, где условное выражение
sql=delete from data table (удалить все записи в таблице данных)
(4) Добавьте запись данных:
sql=вставить в таблицу данных (поле 1, поле 2, поле 3...) значения (значение 1, значение 2, значение 3...)
sql=вставить в целевую таблицу данных выбрать * из исходной таблицы данных (добавить записи из исходной таблицы данных в целевую таблицу данных)
(5) Статистическая функция записи данных:
AVG(имя поля) выводит среднее значение по столбцу таблицы.
COUNT(*|имя поля) подсчитывает количество строк данных или количество строк данных со значением в определенном столбце.
MAX (имя поля) получает максимальное значение столбца таблицы.
MIN (имя поля) получает минимальное значение столбца таблицы.
СУММА (имя поля) добавляет значения столбцов данных
Как ссылаться на вышеуказанную функцию:
sql = выберите сумму (имя поля) как псевдоним из таблицы данных, где условное выражение
установить rs=conn.excute(sql)
Используйте rs (псевдоним) для получения статистических значений и используйте те же методы, что и выше, для других функций.
(5) Создание и удаление таблиц данных:
Имя таблицы данных CREATE TABLE (поле 1, тип 1 (длина), поле 2, тип 2 (длина)...)
Пример: CREATE TABLE tab01(name varchar(50),datetime default now())
DROP TABLE имя таблицы данных (безвозвратное удаление таблицы данных)
19. Методы объекта набора записей:
rs.movenext перемещает указатель записи на одну строку вниз от текущей позиции
rs.moveprevious перемещает указатель записи на одну строку вверх от текущей позиции
rs.movefirst перемещает указатель записи в первую строку таблицы данных.
rs.movelast перемещает указатель записи в последнюю строку таблицы данных.
rs.absoluteposition=N перемещает указатель записи в строку N таблицы данных.
rs.absolutepage=N перемещает указатель записи в первую строку страницы N.
rs.pagesize=N устанавливает на каждой странице N записей
rs.pagecount возвращает общее количество страниц в соответствии с настройками Pagesize.
rs.recordcount возвращает общее количество записей
rs.bof возвращает, превышает ли указатель записи начало таблицы данных, true означает да, false означает нет
rs.eof возвращает, превышает ли указатель записи конец таблицы данных, true означает да, false означает нет
rs.delete удаляет текущую запись, но указатель записи не перемещается вниз
rs.addnew добавляет записи в конец таблицы данных.
rs.update обновляет записи таблицы данных
20 методов объекта набора записей
Открытый метод
набор записей.Открытый исходный код,ActiveConnection,CursorType,LockType,Параметры
Источник
Объекты Recordset можно соединить с объектами Command через свойство Source. Параметр Source может быть именем объекта команды, командой SQL, указанным именем таблицы данных или хранимой процедурой. Если этот параметр опущен, система использует свойство Source объекта Recordset.