VP-ASP :: Shopping Cart Software

Shopping Cart Software Solutions for anywhere in the World

US/Canada(Toll Free): +1 888 587 2278
Europe/UK: +44 (020) 7193 9408
Australia/New Zealand: +61 3 9016 4497

VP-ASP Shopping Cart Customer Forum

Home | Profile | Register | Active Topics | Members | Search | FAQ
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 VPCart Forum
 General help me questions
 "catalogid is missing for extended description"
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

go4gold
VP-ASP New User

151 Posts

Posted - May 01 2007 :  14:27:51  Show Profile  Visit go4gold's Homepage  Reply with Quote
Hi, I really hope someone can help me here as half my (modest) visitors are leaving from shopexd.asp page which seems to display the error message "catalogid is missing for extended description".

I don't understand how they are getting to this page and message in the first place so I have no idea how to try and correct it. Can anyone help me please?

In case it helps, a link is below:

http://myfavouritepubwalks.co.uk/shopping/shoperror.asp

Thanks folks!

Go4Gold

seeker1
VP-ASP New User

Australia
114 Posts

Posted - May 01 2007 :  16:26:55  Show Profile  Visit seeker1's Homepage  Reply with Quote
The message means that there is no product catalogid being passed to shopexd.asp.

Shopexd.asp normally requires one parameter which says which product to display. To display product with catalogid 84 use
shopexd.asp?id=84

When the id= is missing, you will get message
"catalogid is missing for extended description".

This normally occurs when a template has been created without passing the catalogid. A normal template would have

<a href="shopexd.asp?id=[catalogid]">More Details</a>

If the id=[catalogid] is missing the error occurs.

Howard Kadetz
www.hkprog.com
VP-ASP addons and customizations
Go to Top of Page

devshb
Senior Member

United Kingdom
1898 Posts

Posted - May 01 2007 :  16:35:05  Show Profile  Visit devshb's Homepage  Reply with Quote
it's also a sign of hackers trying to test the system, where the hackers are being redirected because they're using an invalid id.
If the hacker gets that message then it's good news for you, because it means that their attempted hack hasn't worked.

Simon Barnaby
Developer
[email protected]
www.BigYellowZone.com
Web Design, Online Marketing and VPASP addons
Go to Top of Page

go4gold
VP-ASP New User

151 Posts

Posted - May 01 2007 :  16:53:19  Show Profile  Visit go4gold's Homepage  Reply with Quote
Sorry I can't see a line like that in the shopexd.asp file, I think it must just be me! The fle only has the following in it:


<%Option Explicit%>
<!--#include file="shop$db.asp"-->
<!--#include file="shopfileio.asp"-->
<!--#include file="shopproductfeatures.asp"-->
<!--#include file="shopconvertcurrency.asp"-->
<!--#include file="shopcustomerprices.asp"-->
<!--#include file="shopproductinventory.asp"-->
<!--#include file="shopalsobought.asp"-->
<%
'**********************************************************************************
' Version 6.00 Automatic Extended Description
' shopexd.asp?id=xx
' xx = catalogid
' The template to be used is is xproducttemplate of a specific template for
' the product in the database
' July 4, 2004 Add dynamic header
' July 2, 2005 Inventory Products
' July 7, 2005 Also Bought
' August 9, 2005 add inventoryoutofstock
'*********************************************************************************
Dim CatalogId
dim ccode
Dim tmpRS
Dim template
dim dbc
dim rc
Dim InventoryCheck, InventoryPriceDisplay, inventoryoutofstock
setSess "CurrentURL","shopexd.asp"
InitializeSystem
Catalogid=request("id")
if not isnumeric(catalogid) then
catalogid=""
end if
ccode=request("ccode")
If ccode<>"" then
ccode=replace(ccode,"'","")
end if
if catalogId="" and ccode="" then
catalogid=getsess("shopexdid")
if catalogid="" then
Serror=getlang("LangNoCatalogId")
HandleError
end if
end if
Setsess "shopexdid",catalogid
ShopOpendatabaseP dbc
WriteImpressions
setupdynamicproduct dbc, catalogid
OpenRecordSet tmpRS
GetTemplate
If Template="" then
Serror=getlang("LangExdNoTemplate")
HandleError
end if
' see if this product has sub products
'Inventorycheck=false ' no sub products
'InventoryPriceDisplay=true ' display prices with sub products
'InventoryProductYesNo dbc, tmpRS, catalogid, inventorycheck, Inventorypricedisplay, inventoryquantitydisplay, inventoryoutofstock
'
ShopTemplateWrite template, tmpRS, rc
tmpRS.close
set tmpRS=nothing
Shopclosedatabase dbc
'Finished

Sub HandleError
on error resume next
tmpRS.close
set tmpRS=nothing
Shopclosedatabase dbc
shoperror sError
end sub
'
Sub OpenRecordSet (RS)
If catalogid<>"" then
Sql="select * from products where catalogid=" & catalogid
else
sql="select * from products where ccode='" & ccode & "'"
end if
Set rs=dbc.execute(sql)
If rs.eof then
Serror = SError & getlang("LangReadFail") & " " & catalogid
HandleError
end if
end sub
'
Sub GetTemplate
on error resume next
dim suffix
Template=""
template=request("template")
if template<>"" then
suffix=right(template,3)
if lcase(suffix)="htm" then
exit sub
end if
end if

'VP-ASP 6.09 - problem with incorrect template occasionally being used
Template=getconfig("xProductTemplate")
If isNull(tmpRS("template")) then
If tmprs("hassubproduct") = "Yes" Then
template=getconfig("xproducttemplateinvent")
Else
Template=getconfig("xProductTemplate")
End if
else
template=tmprs("template")
end If

End sub

Sub WriteImpressions
if Catalogid <> "" then
'increment products impressions
dbc.execute("UPDATE products SET impressions = impressions + 1 WHERE catalogid = " & catalogid)
End If
End Sub
%>


Sorry to be dense but I'm paranoid of wrecking my site if I use trial and error to find the problem!

Many thanks,

Go4Gold
Go to Top of Page

Happy
VP-ASP New User

90 Posts

Posted - May 02 2007 :  16:14:04  Show Profile  Reply with Quote
Is your entire site in http:// or is there a change to SSL at any point? If latter, at which page do you change it to SSL?

Thanks,
Happy
Go to Top of Page

apswater
VP-ASP Super User

317 Posts

Posted - May 02 2007 :  20:39:03  Show Profile  Visit apswater's Homepage  Reply with Quote
Those are most likely serach engine robot hits. I get them all the time on my site too. What I did to figure out what was going on was to put an e-mail snipit in the shoperror.asp that captures the server variable and sends me all the info on error....

I found that I get a few typical errors.

Shopping Cart Empty - even though I dont have a link to the shopping cart or checkout unless you have something in the cart...

Cant read file #

and the one you are getting
catalogid is missing for extended description

All of these only come from robots and never from people.

here is the e-mail code I used, I have 4.5 so you will have to figure placement out on newer versions.

I have this in quite a few places on my site so I could see I didn't have problems to begin with.

<%

If pos=0 then
Response.write sError <---- find where you display the errors
end if
Response.write "</b><font size=2 color=black><br><br><a href=" & home & ">" & LangCommonHome & "</a>"


'Add this e-mail alert

Dim objMail, wherefrom
dim mymail, var2
Set myMail=CreateObject("CDO.Message")
myMail.Subject="Alert : " & what & " : " & who & " : " & lmsg & " on " & site1
myMail.From="YourEmaladdress@...""
myMail.To="YourEmaladdress@..."

VAR2 = "Alert : " & lmsg & " on " & site1 & " - " & what & " : " &who & "<br>" & "referer : <a href=" & Request.ServerVariables(http_referrer) & ">" & Request.ServerVariables(http_referrer) & "</a><HR>"

Dim x
For Each x in Request.ServerVariables
var2=var2 & x + ": " + Request.ServerVariables(x) + "<br />" & "<HR SIZE-1 COLOR=BLACK>"
Next

myMail.htmlBody=VAR2
myMail.Send
set myMail=nothing
%>

my site is at http://www.apswater.com

Edited by - apswater on May 02 2007 20:43:58
Go to Top of Page

seeker1
VP-ASP New User

Australia
114 Posts

Posted - May 02 2007 :  21:24:20  Show Profile  Visit seeker1's Homepage  Reply with Quote
In a similar vain to trapping shoperror.asp, I discovered that search engine bots can cause HTTP 500 errors potentially stopping their indexing of your site. This is not limited to VP-ASP but any ASP application.

To trap these I developed Site Error Alert which is a generic application that can be used on any site.

It provides:

1. Full logging of what, when and why the event occurred to a file.
2. Emailing to site own/web master the full details of the event.
3. If it really was a program error, not a bot, it can provide a form for customer to notify you that something went wrong in your site/shop. You pick what information you want to collect.
4. Traps real errors when a customer is using VP-ASP or any ASP application.


For details go to:
www.hkprog.com/sea500

Howard Kadetz
www.hkprog.com
[email protected]

PS
You do not need to have your own Server. Web Hosting companies such as Alentus allow you to easily install Site Error Alert yourself by simply copying it to a folder on your site.

Edited by - seeker1 on May 02 2007 22:14:20
Go to Top of Page

apswater
VP-ASP Super User

317 Posts

Posted - May 02 2007 :  21:38:02  Show Profile  Visit apswater's Homepage  Reply with Quote
yes, you do get quite a tew 500 errors..

I trap those thesame way.. made a custom error page and pointed the server to it. Of course, you have to host your own stuff to use it.

Another good program I found and use is http://www.weblogexpert.com/
It doesnt track ip's to errors, but it does give you a ton on info about your site.
Go to Top of Page

ironhawker
VP-ASP Super User

USA
260 Posts

Posted - April 14 2009 :  02:32:26  Show Profile  Visit ironhawker's Homepage  Reply with Quote
Make sure your link includes the "id="
<a href="shopexd.asp?id=[catalogid]">More Info</a>

~-~-~-~-~-~-~-~-~-~
Randy "RC" Corn
Institute for Higher Learning
[email protected]
http://www.ironhawker.com
425-828-0738
Go to Top of Page

devshb
Senior Member

United Kingdom
1898 Posts

Posted - April 14 2009 :  03:42:10  Show Profile  Visit devshb's Homepage  Reply with Quote
Also, if you have a product summary template (eg tmp_topsellers.htm) and you change a link in it from "shopquery.asp" to "shopexd.asp", then make sure you change the argument from "catalogid" to "id", ie:

use:

shopquery.asp?catalogid=[catalogid]

or:

shopexd.asp?id=[catalogid]

but don't use:
shopexd.asp?catalogid=[catalogid]

Simon Barnaby
Developer
[email protected]
www.BigYellowZone.com
Web Design, Online Marketing and VPASP addons
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
Snitz Forums 2000