2010-09-02 1 views
0

Привет всем, У меня есть база данных, которая содержит мою информацию о продукте, который вы можете увидеть подключенными к странице каталога здесь:ASP динамических URL-адрес из базы данных SQL Server

http://www.marioplanet.com/catalog.asp

Я хотел бы теперь, чтобы иметь страниц продукта, с URL-адресами, генерируемыми определенным именем в моей базе данных.

Например, если вы укажете свой браузер на указанную выше ссылку и посмотрите на первый продукт (Mario (Running) - Plush), я бы хотел, чтобы URL-адрес, созданный на основе указанного имени.

Итак, вы бы отправились в http://www.marioplanet.com/Mario_(Running)_Plush.asp или что-то в этом роде.

Теперь я не уверен, как это сделать должным образом, поэтому я действительно мог бы воспользоваться некоторой помощью.

Что это самый простой способ сделать это?

ответ

1

Самый простой способ - купить корзину с уже имеющейся способностью. Это сэкономит вам массу головных болей на арене соответствия PCI, если вы принимаете платежи. (Это не значит, что это ответ на смарт-aleck. Пока вы не застрянете, чтобы соответствовать требованиям и пройти аудит, вы действительно не знаете, что у вас есть.) И есть некоторые тележки с открытым исходным кодом, которые сделают это для вас а также если вы не хотите платить.

Я не знаю, что есть простой способ сделать это в классическом ASP. С ASP.NET маршрутизация URL хорошо покрывается и обрабатывается. Я считаю, что Microsoft перестала выпускать обновления для классического asp задолго до перенаправления URL-адресов в моду. Я полагаю, вам придется писать что-то в чем-то отличном от классического asp, чтобы справиться с ним на уровне IIS.

+2

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

+0

У него все еще может быть полная платформа для электронной коммерции, при которой фактическая покупка будет выгружена на authorize.net (он ничего не сохранит для соблюдения PCI). Я разработал сайты, подобные этим для нескольких клиентов, но это правда, он должен знать, что он имеет совместимость с PCI и аудиты.Не могу припоминать этот материал, когда деньги других людей находятся на линии;) – Jakub

1

Построение URL-адресов является легкая часть:

<% 
    Dim productName 
    Dim categoryName 
    Dim url 

    Do While rsProducts.EOF = False 
     productName = rsProducts("ProductName") 
     categoryName = rsProducts("CategoryName") 
     url = "http://www.marioplanet.com/Mario_" + categoryName + "_" + productName + ".asp" 
%>  
    <a href="<%Response.Write url%>"> 
     <%Response.Write categoryName + "-" + productName %> 
    </a><br> 
<% rsProducts.MoveNext 
    Loop %> 

Вы бы тогда должны обеспечить, чтобы:

  • эти страницы все созданные/существуют на диске
  • установки обработчика IIS чтобы обеспечить их правильную маршрутизацию.

лучший маршрут

Предлагаем Вам построить URL, как:

http://mysite.com/jackets.asp?p=Vuitton 

Тогда просто сделать одну страницу для каждой категории (куртки, обувь, кошки, лошади). Внутри каждого захватите имя продукта/SKU из параметра querystring. Вы можете использовать приведенный выше код с небольшими изменениями. Вам обязательно нужно принять некоторые меры при запросе Vuitton, что это не атака SQL-инъекций.

Вам необходимо изменить с .htm на .asp, только если на странице загружается информация из базы данных.

+0

Итак. Как только URL-адреса построены, каков следующий шаг? У меня есть образец страницы продукта (http://www.marioplanet.com/product.htm), но мне нужно будет подключить ее к моей базе данных, не так ли? – Qcom

+2

И если вы идете по этому маршруту, убедитесь, что вы проверяете и не открываете себя для SQL-инъекций, XSS или XSRF-атак. – David

 Смежные вопросы

  • Нет связанных вопросов^_^