Blog Entry: 3/25/2006 4:31:14 PM
This issue came up once before and when I investigated I could find no error in the html that aspprotect generates and those files do exist where they are supposed to. We concluded it was a parsing error from the log file system.
There just really isn't anything I can do about it. I spent a week trying to figure it out. It is just the log parser screwing up under certain circumstances where there is no reason anything is wrong. They have trouble dealing with some of the complex URL/querystrings that the ASPProtect admin area uses. They think there is a 404 eror when there isn't... etc etc
, I would also double check that you changed the field size correctly and on the correct database that is being used in the connection string
,
no worries from me. As with most software projects, i tweak the
heck out of them and then have to make a big decision about whether or
not i even want/need to upgrade.
KT
, When a user 1st signs up a proper case function is run on certain fields.
This is only once on user signup and never done in the admin area.
It's goal is to keep things entered in Proper Case,
so if someone enters "chris williams" it becomes "Chris Williams"
It's not perfect but it helps a lot to keep the data clean and more consistent. Since it only happens during registration those values can be changed later by the admin or the user if someone wants to.
The function is only applied to the fields that it makes sense to apply it to....
In your case adding a drop down menu means you want exactly what is in your drop down to appear so you wouldn't want it happening.
That being said, it is really easy to remove this situation from any field it is happening to during registration.
So edit "users/add_new_account.asp" with a text editor
find
CmdAddUser.Fields("Company_Name") = PCase(Company_Name)
and change it to
CmdAddUser.Fields("Company_Name") = Company_Name
That is all that is needed to made the change
cwilliams38421.5069328704, I'll try to help when I get back tues night,, see the contact page for info on where I am .
http://www.cjwsoft.com/contact/default.asp?Subject=CJWSoft+G eneral+Inquiry
, Just wanted to let you know that after modifying the remote host string in the email pages and getting the correct connection from my server, everything is running fine.
I hope you enjoyed your vacation.
thank you
adam
, All can say right now is take a break and get away from it for a bit. All your going to do is stress yourself out more if you keep working on it.
There is probably a way to make it work but it may require days of fiddling around and reading articles and trying things and even then you may not get it working AND THEN ITS JUST A BAD IDEA ANYWAY. Like John says you are better off running it on a server that is not a domain controller.
, on that particular page check the session variables manually (not using the include)
that way you are keeping the login access checking to an absolute minimum, elminating any form processing from the login procedure, and keeping the upload script happy
like so
<%
If Not InStr(Session("Groups"),"*1*") Then
' do whatever
End If
%>
you could response.write something followed by a response.end
or you might even want to response.redirect them to some other page that using the "check_user_inc.asp" where they can log in
And if you are going to be using a free asp upload script use this one as it is probably the best pure code upload solution available as far as performance goes.
http://www.freeaspupload.net
, Chris,
Yesterday when I would access the get_me_in page with the password key, I was then taken to the default login page. It did not give me the option to create a user.
Today, when I entered the password key into the get_me_in page, I was taken right to the create user page. So, yes the problem has been resolved. I have no idea why though.
, that information is actually not helpful in determining whether parent paths is enabled or not.
You should really ask your hosting company or better yet try doing a server side include to page one directory up and see if you get an error.
example
<!--#include file = "../myfile.asp"-->
cwilliams38302.6484259259, What am i supposed to do now... i do have another member server that is not a domain controller-
However, i have like 5 websites running on this domain controller already. I have thought about this before how its a HUGE security risk but it will take too long to configure everything on the other computer :(
, I didn't know about it. I will try to check it out some more this week.
, Well at least now the import/export link shows up now! lol, Redirecting is not something ASPProtect does because you can
do that sort of thing using simple ASP redirects.
In all of these examples you are going to want to protect the pages you send these users to accordingly.
So that if they know the url they just cant go their directly without loging in.
Redirecting example..
This page will redirect admins or level 4 users to a certain page and anyone else to
another page.
<%@ LANGUAGE="VBSCRIPT" %>
<!--#INCLUDE FILE="check_user_inc.asp"-->
<%
If Session("Admin") = "True" or Session("Access_Level") = "4" Then
Response.Redirect("sompage.asp")
Else
Response.Redirect("someotherpage.asp")
End If
%>
Redirecting example..
This page will redirect level 1 users to a certain page. level 2 users to certain page, and anyone else to
another page.
<%@ LANGUAGE="VBSCRIPT" %>
<!--#INCLUDE FILE="check_user_inc.asp"-->
<%
If Session("Access_Level") = "1" Then
Response.Redirect("level1.asp")
ElseIf Session("Access_Level") = "2" Then
Response.Redirect("level2.asp")
Else
Response.Redirect("allothers.asp")
End If
%>
Redirecting example..
This page will redirect user "PistolPete" to a certain page.
<%@ LANGUAGE="VBSCRIPT" %>
<!--#INCLUDE FILE="check_user_inc.asp"-->
<%
If Session("Username") = "PistolPete" Then
Response.Redirect("somedirectory/somepage.asp")
End If
%>
then just make sure the page you send the user to to also checks to see if the user is the right user.... to make sure others users can't access each others pages
<%
If Session("Username") <> "PistolPete" Then
Response.Write("You do not have access to this page.")
Response.End
End If
%>
etc etc etc.... these code snippets should point you in the right direction...
, Personally, I think that is something you should work into your existing site code or something you should handle on your own.
It's basic site maintenance issues.. and something every webmaster must deal with on an individual basis. If you are going to upload a new version of some large file of course you should go disable wherever people are dloading it from and then wait/re upload/turn things back on.. etc etc
It is not going to be a feature of ASPProtect and I don't see why it should be. If you want to have some sort of global site is temporaily down thing you should have a common server side include on all your pages right after the password protection include file. In that include file you could easily stop site access with a response.end and also show a message.
Or you should disable a file download page manually on a file to file basis.
Really, big busy sites that have their sh*t together use versions of files for a reason. Every new upload is a slightly new version revision and has a slightly different file name They do this partially to eliminate the problem your talking about and also because that is the way it should be done. Nothing gets uploaded over itself ever. Even if there is a mistake in a file they upload a new revision and document it in the revision/changes file. And of course they dont show users a link to a new file revisions until it is uploaded.
, humm,
thats a new one.. something is very wrong.
Please show me screenshots of exactly what happens and what you see. It does not make any sense so I need more info or I least need it described in more detail., Installing and running NET on a DOMAIN CONTROLLER is a BAD idea period.
Besides the security risks you will have nothing but endless problems
with that setup. Domain controllers ARE NOT and NEVER were intended to
be run as any sort of application server. Your best bet is to run your
asp and asp.net scripts from a member server or one set up just for web
apps. Of course if your in the mood to mess around endlessly it is
possible to make that work, but why would you want to when the prefered
solution is a heck of a lot easier.
, That was wrong of me but not what I meant. It seems as soon as I purchase something like this it doesn't work right and it can't be altered to work with what I have. The support ends up sucking or being none. Listen I’ve gone thru you're product and it's wonderful and does exactly what you say it does so that's a relief. Sorry about my ignorance with .NET but I’m from an ASP world and it's a lot different. You can see what I’m trying to protect here http://www.hotmixxent.com:8087/default.aspx. The final site after testing will be http://mxais.sfmx.org/default.aspx. Again thanks for the support on Christmas Sunday, that’s defiantly beyond the call and I appreciate it a lot.
, Hello,
It is very possible (just basic ASP and database accessing techniques)
It is just not the sort of thing I support in the forums as it is a customization related.
Even for me something like that would take 1-3 hours of coding time. Basically, it is just not something I could just explain to you real quick.
You might want to pick up a good book on ASP or check out some of the great resources out there. http://support.cjwsoft.com/forum/forum_topics.asp?FID=17
Doing stuff like this is relatively easy, but can be time consuming work.
In the future please use a more descriptive topic for yours posts "I need help" is not exactly helpful to anyone else searching through the forums . I therefore renamed your post accordingly.
I really try to keep the forums organized and clean. That's all.
Thanks
cwilliams38420.5234490741, Encountered another issue. When entering a user name correct but the wrong password get the following error:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error in string in query expression '(Username = 'ROBERT') AND (Password = 'Z£$'.
/check_user_inc.asp, line 115
Did I do something else wrong?!
Thanks
, Yeah sorry you are right. It works for me
http://www.rottys.net/gallery/default.asp?CatLevel=2&Cat 1_ID=5
, Can you please elaborate on this? I have a flash banner that is on my site. All of the info is in the code banner section. In the banner link section, I have nothing. Do I need to actually edit the swf file with redirect URL? How do I edit the swf file? Once that is edited, do I put the URL of the site in the Link URL space? Thanks. , That is actually normal and supposed to be like that.
You have the current version.
ASPVendor is a VERY simple application meant to work with PayPal shopping cart that runs on their server. It is based off the ASPClassifieds core code. There is only one version and highly doubt there will ever be another., I purchased the photo upload software and it all works fine, except when I
try to click the categories I've created on the home page they don't show
any of the albums I've created and designated as that category. I went to
one of the example sites at http://www.minnessota.com/users/
place_new_album.asp?CatAdValue=
and it works fine. When you click Photos(40) it takes you to the 40
photos. I'm sure it's some setting I missed or something simple. Could
you email me back soon and let me know what to do/try? Thanks. , yes, any page you want protected needs to be edited..
You can probably have a login box on a non protected page. Just copy the generated source html form code for the login box of a protected page. Then put it on your non-protected page, but change the action to the page you want them to log in to.
In other words go to a protected page. See the login box, view the html browser source and use that to make your login form on the main page.
I have not tried it with .NET but I am pretty sure you can do it since it pretty much works the same as the classic asp version of ASPProtect.
try it.. see if it works.. If I have time tommoro I will test it out., Sorry, there is no option for that.
I'll take it into consideration, but the way the banner rotation logic works would make adding such an option very complicated.
Just give it an expiration date way into the future if you do not want an ad to expire anytime soon.
I usually just make all my ads expire in like 2020 or something like that since I don't want them to stop running either on some of my sites.
cwilliams38247.1116319444, Just having the database with members does not protect the page. You need to add the appropriate code to every page you want to restrict access to.
You need to click on the Groups tab in Admin.
Click on Generate PW protection code.
Click on the basic button if you don't want to include levels or groups or choose a level or group(s) and click the appropriate button.
Paste the code that's generated into the top of an ASP page in code view.
Is that what you're looking for?
Michelle
, Everything is running fine.. I can read ads... reply to them. but when I click sign in or register.. I get a server error.
Any suggestions
Thank You
, The PayPal feature that is in ASPClassifieds has always been labeled as experimental and has never been supported as the documentation says. About a year ago I stopped even mentioning the feature on the product pages or in the live demo because I didn't like how it worked and I decided I would just market the application as a free based classifieds. It’s just not something I can support or talk about. To work really well it really needs to be coded to use PayPal IPN and a credit system. Where ads and various extra features cost so many credits and people have to buy credits before they can post any ads.
That’s about all I can tell you. It's just not something I support.
, The way the application ships there are no password confirmation areas anywhere ? Please be more specific as to what you have done and if any mods are involved ?
If you are talking about one of the MODS please realize they are not supported. http://support.cjwsoft.com/code/moreinfo459-1.htm
Even though they are not supported I look them over pretty closely and I know of no issue like you mentioned so I would suggest re-downloading the MOD. Perhaps you got a corrupt download or file.
, If you makes you feel any better the photo gallery app runs awesome off an access database. Mostly because all of the picture work is done in the filesystem, not the database. The load on the database is relatively low even with a lot of users., Your users with Internet Explorer may have received the "Page Expired" error. For ASPProtect users, it happens when the user is not logged on and tries to invoke the target page. check_user_inc.asp puts up the login form, and IE sees it as part of the target page. Any later attempt to Back up and reload from cache gives the errror.
My solution was, after successful login, instead of falling through the bottom of check_user_inc.asp and running the target page, I issue a re-direct to reload the target page. I also added META tags on the dynamic login form to say no-cache and expire now, so the re-direct really does reload the target page. This time, of course, check_user_inc.asp does not need to put up the login form, and the new target page in cache contains no form at all. So, IE will not give a Page Expired error when Backing up to it later.
Netscape, and I gather other browsers, do not behave the same way, so I limited the solution to IE. Also, the solution only works if the target page has no form of its own.
I'm uploading my customized version of check_user_inc.asp that contains this solution. (In it, I also used the Javascript focus method to place the "cursor" in the Username field when the login form loads.)
2004-11-22_050940_check_user_inc.zip
cwilliams38313.494537037, Is there a way to set various members to upload a limit of photos. So, one member can only upload 5 photos in 1 album and another can upload 30 photos in 2 albums. Even if you just set a permission for the number of uploads for each member.
Thank you
, thx, thats a known error I forgot about.
I just updated the zip archive so the error is gone but if you bought ASPBanner Unlimited Version 7.3 Before April/06/2004 you can optionally apply the fix.
To fix it (only if you want to use the option explicit method of calling banners and not even a really necessary fix as this is just an error in the generated code your supposed to use)
Just edit aspbanner/zones.asp with a text editor.
Where you see the double dim carefully remove one of the "dim" s and save the file.
cwilliams38209.9251851852,
IMPORTANT UPDATE - READ THIS
http://support.cjwsoft.com/forum/forum_posts.asp?TID=205& ;PN=1
The IPN Subscription Pack which is built in to ASPProtect 7 contains all the pre-built scripts you need to implement PayPal IPN Subscriptions with ASPProtect. IPN stands for (Instant Payment Notification). It allows you to set up scripts on your server so whenever a PayPal payment is processed the PayPal server sends info to your server regarding the transaction and vice versa. This is a fully automated process and allows you to charge users for access by the month or however long you like.
The Subscription feature of PayPal handles recurring billing automatically. The PayPal server will communicate with the ASPProtect system and keep everything up to date with users and their subscriptions.
This Support Pack basically gives you an additional signup and registration directory "paypal_sub_signup" and it should not interfere with any changes or customizations you have made to your ASPProtect setup. New users can register in this directory and sign up for a subscription at the same time. Existing users whether active or expired can be sent to this directory where they can lookup their account and start a subscription. You can also assign various Access and Group Levels during signup and you can set up various prices for various amounts of time as well. This is a real-time setup for the most part. As soon as a user pays via PayPal your system is updated and they will have access.
To use this all you need to do in ASPProtect 7 is enter your PayPal account name into the settings screen. It will be an email address. You'll need a business or premier account with PayPal and you will need log into your PayPal account and turn on IPN in you profile. They make you enter a default IPN URL. We do not use that so if you already have something there leave it there. If you dont have something there you can type in any the full url to any page on your server. It's probably best to send it to an empty ".asp" page or something.
Changing Payment Options
In the "paypal1.asp" file there are some sample payment options set up.
They look like this and you can have as many as you like.
<!-- Begin Payment Option Code -->
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_blank">
<% Label = "Membership (1 Month) $9.99 Recurring" %>
<!-- Begin Form Fields You Can Edit.. See PayPal Subscription Manual For Details -->
<input type="hidden" name="no_shipping" value="1">
<input type="hidden" name="no_note" value="1">
<input type="hidden" name="a3" value="9.99">
<input type="hidden" name="p3" value="1">
<input type="hidden" name="t3" value="M">
<input type="hidden" name="src" value="1">
<input type="hidden" name="sra" value="1">
<!-- Field Below must have 2 commas First two values are optional (access level,groups,user ID)-->
<input type="hidden" name="custom" value=",,<% =User_ID %>">
<!-- End Form Fields You Can Edit.. See PayPal Subscription Manual For Details -->
<!--#INCLUDE FILE="form_data_inc.asp"-->
<input type="image" src="https://www.paypal.com/images/x-click-but20.gif" border="0" name="submit" alt="Make payments with PayPal - it's fast, free and secure!">
</form>
<hr>
<!-- End Payment Option Code -->
To really understand what these form values mean it is best to look through the PayPal Subscriptions Manual which is a PDF file you can get from the PayPal Site.
This link was valid the last I checked...
Subscriptions and Recurring Payments Manual
It also may be helpful to use their wizard to create some subscription buttons with different settings and then look at the code generated.
Bascially these are the important ones..
a3 - amount to billed each recurrence
t3 - time period (D=days, W=weeks, M=months, Y=years)
p3 - number of time periods between each recurrence |
The custom field is something we are using to send info from ASPProtect to PayPal.
it allows you to set the access_level or groups access (groups support require the ASPProtect Option Pack)
<input type="hidden" name="custom" value=",,<% =User_ID %>">
or this example where we are setting the access_level to (2) and also giving the user access to groups (3 and 4)
<input type="hidden" name="custom" value="2,*3*4*,<% =User_ID %>">
Here is how it works.
The value setting (red) is essentially and array that can be made up 3 elements separated by comma's
access_level,groups,User_ID
If you do not want to set the access_level or groups access.. then you don't even need to edit the setting.
Values must be separated by a comma even if there is no value and there can be no spaces. If you didn't want to set an access level or groups there would still be 2 commas at the beginning. etc etc
Basically there must always be 2 commas but you only have to set last values which is the User_ID from the ASPProtect system.
The 1st value is the access level you want to user assigned to.
The 2nd option is the groups you want the user assigned to. (requires option pack)
The 3rd option is the User_ID which the system takes care of. Do not edit this option. Leave it as <% =User_ID %>
cwilliams38421.7141782407, Please Note : ASPProtect v7.x has a new feature called groups that is much more powerful than access levels. Access Levels were left in the product primarily for existing customers that upgrade to the new version so they do not need to make a lot of changes to their site if they were using Access Levels.
More On Access Levels
Again, Examples of managing Access Levels are provided in the "multiple_access_levels" folder included in the root of the Password System. Look at the source code of the ASP pages in that folder with a text editor to see the working code.
Access Levels and how they work can be re-coded to work in many different ways. However, you have to be a good ASP developer to make changes to it. Here is some information on how they work by default.
In the "check_user_inc.asp" that comes in the root of this system Access Levels work as follows.
Level 1 has Access to - Level 1
Level 2 has Access to - Level 1,2
Level 3 has Access to - Level 1,2,3
Level 4 has Access to - Level 1,2,3,4
Level 5 has Access to - Level 1,2,3,4,5
Level 6 has Access to - Level 1,2,3,4,5,6
Level 7 has Access to - Level 1,2,3,4,5,6,7
Level 8 has Access to - Level 1,2,3,4,5,6,7,8
ADMIN has Access to - Level 1,2,3,4,5,6,7,8,ADMIN
Here is some additional info..
If the access levels are too restrictive you can ignore them all together and create your own totally custom solutions.
Here is a quick rundown of some of the things you can do.
Ok... so if you want to be really specific about what each user can see and
can't .. here's an example of what you can do
Don't use the access levels before the include file..
Don't worry about what you set a user to in the admin area since the access levels won't be used.
Do something like this..
Every time a user logs in session variables are set that you can access at
any time.. thus allowing you to know who they are.
So you could do something like this...
<%@ LANGUAGE="VBSCRIPT" %>
<!--#INCLUDE FILE="check_user_inc.asp"-->
<%
If Session("USERNAME") = "bob1267" or Session("USERNAME") = "carl45" or Session("ADMIN") = "True" Then
Session("PASSWORDACCESS") = "Yes"
Else
Session("PASSWORDACCESS") = "No"
Response.Redirect(Request.ServerVariables("script_name"))
End If
%>
The following URL explains what Redirects are.
http://www.powerasp.com/content/code-snippets/redirects.asp
That would in effect create totally custom access levels.. but you would
have to do it manually for each user.
You can also do things like this after a person logs in
Show custom html to any specific user based on either their username or
access level ... like so
say there was a menu and a certain link should only show up to username
"paully67"
you could do something like this
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
<br>
<a href="main.asp">Home Page</a>
<%
If Session("USERNAME") = "paully67" Then
%>
<br>
<a href="paullys_page.asp">Pauls Stats Page</a>
<%
End If
%>
<br>
<a href="links.asp">Links Page</a>
</BODY>
</HTML>
Or you can show custom HTML or links based on Access Levels or any other info.
You can do just about anything with if-then statements and
using the built in vbscript functions..
Hopefully this info will help to give you some ideas...
Bottom line is you have to do some work within your site to make the Access Level system really come alive.
cwilliams38403.6781481481, I have no idea of what kind of 'stuff' to try. I'm running other asp apps that use there own Access databases with no problem whatsoever.,
Ok, set up a new web.config in root, with just the suggested code.
that worked to get this....
Configuration Error
Description: An
error occurred during the processing of a configuration file required
to service this request. Please review the specific error details below
and modify your configuration file appropriately.
Parser Error Message: It
is an error to use a section registered as
allowDefinition='MachineToApplication' beyond application level. This
error can be caused by a virtual directory not being configured as an
application in IIS.
Source Error:
Line 409: Line 410: Line 411: <authentication mode="Forms"> Line 412: Line 413: <!-- DO NOT CHANGE UNLESS INSTRUCTED TO DO SO -->
|
Source File: D:\hshome~aspnetprotect\web.config Line: 411
any ideas?
Andy
, It is most likely because they have something running like Norton Ad Blocker.
Or something of that nature that blocks anything with certain words in it like "ad"
They are running something that is doing it.cwilliams38450.0079282407, This user is talking about preparing more than 100 pics at a time for an album that already exists and doing it using linux.
I asked the user to post the code here because I think it is interesting and it may help someone who is working with the app.
This article is not for everyone for a few reasons.
1.) The application can already mass import pics on it's own. It does 100 pics pretty quickly on a decent server. The built in method also resizes pictures and make low res thumbnails should your server support a supported ASP image resizing component. The method above simply rename pictures in a folder so the application will see them as part of an album.
2.) We don't support or recommend that anyone sets the application to use more than 100 pics per album. It is just not tuned for that and there will be issues. Please dont ask me what they are as it is complicated and I am not sure/dont remember what they all are.
3.) Your going to have to be familiar with linux to use the code shown above.
cwilliams38210.5694444444,
Timecard Entry: 3/25/2006 4:31:14 PM
timecards for the week., WAITES-new info / sled, worked on the PC bundle issues, Worked with Don on Tax issues, checked customer accts, checked accts in imail, finalized individual invoice procedure, covered for lunches, answered phone - signups, cancels, acct changes, filed dsl customer records., Wiring and installing phone in office for me and Chris W., TICC payroll, replaced all PC Bundle ads on gogisco.net site with DSL ads/links, training with systems with Randy and ken in the enginering room , to watertown from rochester, payroll to Wtn, enter timecard thing three times.
Left message for debra kohos- watertoiwn eye center, Rewriring a few things because of the Cisco. Relocating some hubs in their racks., general admin, prepared for meeting w/sackets B&B, worked on al ricci and mike's dive shop proposal, spoke with ladyfrom Blue Heron Realty concerning a website, Trying to get back with Christine at the Chamber of Comerce (Watertown). She had called earlier because their connection wasn't working., mop faxed to andy. got keys copied for ticc. went over po's with darrell. submitted harry's expense report. po for sunrise equip. messages., travel back and forth, more timecards still lacking a few, Reset modems again... Clayton (4911) and Ogdensburg (6504) kept going busy. Reset them a total of 4 times today. Fixed Linda's computer, because someone unplugged her. , Called and emailed expiring users., Cleaned up, took out the trash and answered a few calls, and did the dial up issue., Set up ISDN Co Apt, cvx training at Nortel, Trying to tweak the signal coming into the froggy 97 machine, and the signal going out., Filed customer paperwork, readied money for Clayton, helped get invoices ready to mail, answered phone, sign-ups, reactivations, Emails, Watertown Office, GraysFlowerShop.Com - Inventory admin complete, tested, ready to go. (billable), email, etc., travel to tow atertown with meeting with american red cross,