[AccessD] OT - Getting started with Web development

MartyConnelly martyconnelly at shaw.ca
Tue Dec 2 13:54:33 CST 2003


One of the interesting things you can do with .Net deployment, is to use
the Updater Application Block.
http://builder.com.com/5100-6389-5077516.html?tag=e606


Drew Wutka wrote:

>You can get the IP address of the client though.  If you aren't getting
>clients that are behind a proxy, then you just have to reverse DNS to get
>their machine name.
>
>Drew
>
>-----Original Message-----
>From: Jim DeMarco [mailto:Jdemarco at hshhp.org]
>Sent: Tuesday, December 02, 2003 8:15 AM
>To: Access Developers discussion and problem solving
>Subject: RE: [AccessD] OT - Getting started with Web development
>
>
>Each folder does have its own authentication settings but it still won't
>give access to the machine name.  If the DLL is used it may need to be
>installed on user's PC's and accessed via client side scripting.  Unless
>scripting alone can access the API's then it's not even necessary.
>
>Jim DeMarco
>
>-----Original Message-----
>From: Haslett, Andrew [mailto:andrew.haslett at ilc.gov.au]
>Sent: Monday, December 01, 2003 9:09 PM
>To: 'Access Developers discussion and problem solving'
>Subject: RE: [AccessD] OT - Getting started with Web development
>
>
>If you host your app in a virtual directory, then any changes you make will
>only affect your web application.  They don't need to change any 'global
>iis' settings, so that should keep your network admins happy.
>
>I really think it's the easiest way to go rather than using dll's or client
>side script.  All you have to do is check one box and you're laughing!
>
>Another point to remember: The IE6 option, under advanced->tools, called
>"Enable Windows Integrated Authentication" can affect whether the server
>variables (LOGON_USER) returns anything.  Might pay to change that and see
>if it fixes your initial problem.
>
>Cheers,
>Andrew
>
>-----Original Message-----
>From: Mitsules, Mark S. (Newport News) [mailto:Mark.Mitsules at ngc.com] 
>Sent: Tuesday, 2 December 2003 9:46 AM
>To: 'Access Developers discussion and problem solving'
>Subject: RE: [AccessD] OT - Getting started with Web development
>
>Andrew,
>
>  
>
>>If you're working in an intranet you can use integrated authentication.
>>    
>>
>
>I am developing for an intranet, but unfortunately, I stand little chance of
>changing any IIS settings.
>
>
>  
>
>>If you're using .Net you can use impersonation
>>    
>>
>
>I'm a little familiar with WMI scripting and impersonation, but that
>requires that you have administrator privs on the remote machine.  Is this
>similar to what you mention in .Net?
>
>
>
>Mark
>
>
>-----Original Message-----
>From: Haslett, Andrew [mailto:andrew.haslett at ilc.gov.au]
>Sent: Monday, December 01, 2003 6:01 PM
>To: 'Access Developers discussion and problem solving'
>Subject: RE: [AccessD] OT - Getting started with Web development
>
>
>I don't think that will work.  IIS performs your authentication so won't
>have the client details available.
>
>You'll have to run a custom login form to get the user details or ask your
>host to set up basic authentication (not overly secure).
>
>If you're working in an intranet you can use integrated authentication.
>
>(If you're using .Net you can use impersonation which is another step
>further and allows you a little more control).
>
>Cheers,
>Andrew
>
> 
>
>-----Original Message-----
>From: Jim DeMarco [mailto:Jdemarco at hshhp.org] 
>Sent: Tuesday, 2 December 2003 6:21 AM
>To: Access Developers discussion and problem solving
>Subject: RE: [AccessD] OT - Getting started with Web development
>
>VB 5.0 will work as well I believe (I misstated VB 6.0 below).  Just create
>a class within the DLL with LoginName and Machine properties (returned from
>your API calls).
>
>Jim D.
>
>-----Original Message-----
>From: Mitsules, Mark S. (Newport News) [mailto:Mark.Mitsules at ngc.com]
>Sent: Monday, December 01, 2003 2:28 PM
>To: 'Access Developers discussion and problem solving'
>Subject: RE: [AccessD] OT - Getting started with Web development
>
>
>Thank you Jim.  I tried that, but unfortunately our IT people must have IIS
>configured to accept anonymous access.  The only ServerVariables that are
>uniquely identifiable are REMOTE_ADDR and REMOTE_HOST.  There is one machine
>here loaded with VB 5.0 so I may be able to create that work-around you
>suggested.
>
>
>Mark
>
>
>
>-----Original Message-----
>From: Jim DeMarco [mailto:Jdemarco at hshhp.org]
>Sent: Monday, December 01, 2003 1:19 PM
>To: Access Developers discussion and problem solving
>Subject: RE: [AccessD] OT - Getting started with Web development
>
>
>Mark,
>
>Here's code to get the logon name.  I don't know about the machine name via
>ASP but here's a URL that lists all the Request.ServerVariables you can use:
>http://www.4guysfromrolla.com/webtech/092298-3.shtml
>
><%
>'anonymous access must be disabled in IIS for this to work Response.Write
>(Request.ServerVariables("LOGON_USER"))
>%>
>
>You do have the option however to use your existing VB/VBA code to grab user
>name and machine.  Just wrap it an ActiveX DLL and call that from your ASP
>code (if you use VB 6.0 that is). (it's the option I'd take if there is no
>server variable)
>
>HTH,
>
>Jim DeMarco
>Director Product Development
>Hudson Health Plan
>
>
>-----Original Message-----
>From: Mitsules, Mark S. (Newport News) [mailto:Mark.Mitsules at ngc.com]
>Sent: Monday, December 01, 2003 12:02 PM
>To: '[AccessD]'
>Subject: RE: [AccessD] OT - Getting started with Web development
>
>
>Drew,
>
>I for one thank you for "Chapter 1".  As for writing an article or a book, I
>believe that you've already done most of the work.  You have a searchable
>archive of all of your posts for any given subject.  I'd be willing to bet
>you've already written it, you just need to gather it together.
>
>I especially want to thank you for the "hit counter".  It gave me a great
>idea.  I have been relying on the IT-provided WebTrends report for
>statistics regarding the departmental website that I administer.  But their
>statistics are at the division level, not departmental.
>
>One not-so-quick question regarding Access v. ASP...  In a few of my Access
>apps I utilize API calls to capture the login name and machine name of the
>user.  Is it possible to replicate that functionality using any combination
>of ASP/HTML/VBScript?  (I once had an UNIX instructor who's motto was "The
>answer is always yes, the question is how.")
>
>Thanks for any comments,
>
>
>Mark
>
>
>-----Original Message-----
>From: Drew Wutka [mailto:DWUTKA at marlow.com] 
>Sent: Friday, November 28, 2003 7:07 PM
>To: 'Access Developers discussion and problem solving'
>Subject: RE: [AccessD] OT - Getting started with Web development
>
>
>I've thought about writing a long set of articles to put on my website, but
>I always find something else comes up...know what I mean?
>
>Drew
>
>-----Original Message-----
>From: Jim Lawrence (AccessD) [mailto:accessd at shaw.ca]
>Sent: Wednesday, November 26, 2003 7:26 PM
>To: Access Developers discussion and problem solving
>Subject: RE: [AccessD] OT - Getting started with Web development
>
>
>Hi Drew:
>
>Have you ever thought about writing a book on the subject...You have
>finished chapter one.
>
>...I teasing... :-)
>
>Very good introductory
>Jim
>
>-----Original Message-----
>From: accessd-bounces at databaseadvisors.com
>[mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Drew Wutka
>Sent: Wednesday, November 26, 2003 2:55 PM
>To: 'Access Developers discussion and problem solving'
>Subject: RE: [AccessD] OT - Getting started with Web development
>
>
>Paul, I have been developing ASP project for quite some time now.  I think I
>can narrow down what you REALLY need to know to get started.
>
>First of all, before you dig into web development, you MUST understand how a
>web server and web pages work.  It is a whole different ball of wax compared
>to an Access FE.  With an Access FE, you create forms and reports, and each
>user has a copy (or uses a shared FE) of the front end.  This has several
>drawbacks.  First of all, if you have copies of the FE all over, you have to
>create an update process to push out new changes.  If you have a shared FE,
>then you have to kick everyone out to update the process.  On top of that, a
>user can be anywhere, so there can always be issues of where things are
>located.  One user may have a share mapped to S, while another has it mapped
>to T.  UNC's can handle this, but then there is also the issue of whether
>people are able to even get to the locations involved.  On a web server, all
>of these issues are moot.
>
>The way a web server works, is the client opens their browser and requests a
>web page.  Let's say they go to http://MyWebsite.com.  The browser does a
>few things, one of which is it sends an http request to the server sitting
>at whatever mywebsite.com resolves too.  (http is Hyper Text Transfer
>Protocol.  HTML is Hyper Text Markup Language.  So, HTTP is the protocol
>uses to transport HTML.).  The server at the other end gets an http request
>for it's root directory.  Notice the URL doesn't have a specific file (this
>is a KEY point to remember).  That is just fine and dandy, because a
>webserver can be asked for a page by just the 'folder', since each folder
>can have a default document setup.  In most cases it is index.htm or
>default.asp, but it can quite frankly be any document you want (or even a
>list of documents).  For our example, let's say it's default.asp.  The web
>server then reads the default.asp page and runs it through it's ISAPI
>filters.  These are filters that cause various things to be done to the HTML
>that is going to be sent back.  Two good examples of this are includes and
>ASP itself.  Includes are when you mark another file or files to be included
>within the document.  So, if you have a header that you want on every page,
>instead of putting the HTML for that header on every page, you put the
>header in it's own file, and just include it in all of your pages.  The
>include ISAPI filter then incorporates that HTML in the outgoing HTML.  You
>can also include .asp code, similar to putting code in a module, versus
>behind every form/report.  The ASP ISAPI filter is a little more complex.
>Instead of just replacing text, it actually 'works' the ASP code on the
>page.
>
>This is the CORE of ASP.  What the end user get's, is just the outgoing
>HTML.  They never get the ASP code itself.  ASP can either be passive or
>dynamic.  My own terms for the two actions ASP can perform.  Passive is when
>the ASP does something that the users can't see. Dynamic is when ASP does
>something that the users DO see.  For example.  If the default.asp page was
>like this:
>
><%
>dim cnn
>dim rs
>dim strSQL
>set cnn=server.createobject("ADODB.Connection")
>set rs=server.createobject("ADODB.Recordset")
>cnn.Provider="Microsoft.Jet.OLEDB.4.0"
>cnn.Open "E:\MyDB.mdb"
>strSQL="SELECT Hit FROM tblHits;"
>rs.Open strSQL,cnn,1,3
>rs.AddNew
>rs.Fields(0).value=1
>rs.Update
>rs.close
>set rs=nothing
>cnn.close
>set cnn=nothing
>%>
><HTML>
>Hello
></HTML>
>
>The end user will get a page that says hello, but internally, the ASP page
>has added a record to a database, in this case, a simple hit counter.  This
>is passive, since the user will always get 'Hello', no matter what they do.
>The ASP code is doing work, but it's something the end user doesn't see.
>
>Dynamic ASP pages are where the output the user sees is directly affected by
>the ASP code.  To do this, you must either use the = symbol (which is a
>shortcut to have the ASP send something out with the resulting HTML stream),
>or the response.write procedure.
>
>For example, let's have default.asp be this:
>
><%
>dim strIP
>strIP=request.ServerVariables("REMOTE_ADDR")
>%>
><HTML>
>Your IP Address is: <%=strIP%> <br>
><%
>response.write "Have a nice day."
>%>
></HTML>
>
>What the user will see is a message that has their IP address, like this:
>
>Your IP Address is: 65.65.125.209
>Have a nice day.
>
>We used the equal since to 'insert' something into the normal HTML with ASP,
>and then we used response.write to directly output a string into the
>outgoing HTML stream.
>
>The last thing to remember when dealing with a web server is that the end
>users are getting whatever the web server hands out, the moment they request
>it.  Once they get the resulting HTML stream, and their browser displays the
>page, there is no longer a connection to the file they requested.  That
>means if you are constantly updating asp pages, the end users will just
>simply get the 'current' results at the time of their request.  No kicking
>everyone out, etc.  Pretty handy.
>
>Three more items to cover. Above was the biggie.  First of the three.  HTML.
>HTML is actually pretty simple.  I personally used Front Page when I started
>out, to let it do the HTML for me, then after a few months of going back and
>forth, I just got the hang of it, and I rarely ever use FP for writing the
>HTML anymore.  The two key items to remember with HTML is that everything is
>written with tags.  Some tags are stand alone, such as <BR> (which is a line
>break), and some tags must have a start and finish (<HTML> and </HTML>, or
>an easier example <b> and </b> which is for bolding text).  Tags also can
>have properties.  For example, an anchor tag (for hyperlinks) is a.  <a
>href="http://wolfwares.com">Click here to go to Wolfwares.com</a>  <a starts
>the tag, it has an href property, which is the URL of the site/file the
>hyperlink points too, then the tag is closed with the >, and between the
>start tag, and the closing tag </a>, there is text, which is what the user
>will see as the text of the hyperlink.  The second key item to remember with
>HTML is that no matter what format you write the HTML in, what the user sees
>in the browser is determine by the TAGS, not by the HTML code.
>
>So if you write:
>
><HTML>
>This is a
>Test
></HTML>
>
>The user sees:
>This is a Test
>
>If you write:
><HTML>This is a <br>Test</HTML>
>
>The user sees:
>This is a
>Test
>
>Second of the three is a BIG difference between Access and ASP.  Access runs
>it's code on the users processor.  This is both good and bad.  Bad, because
>the end user must have Access (or a run-time installed).  Also, bad because
>users on slower machines are going to be delayed longer then users on fast
>machines.  Good, because as long as the end users have the correct
>software/runtimes, your application should almost be gauranteed to work.
>With ASP, if you write standard HTML, it doesn't matter what you have the
>ASP code do.  Your ASP code only has to run on the web server.  Your clients
>can be running Pentium 4's, with IE, or Mac's with Netscape, and everyone
>sees the same results.  A client running a 2.6 gigahertz on a 56k modem is
>going to run your application at the same speed (well, pretty much the same
>speed) as a client running a 486 66mhz with a 56k modem.  In fact, if your
>pages are light enough on the output (little to no graphics, just plain
>HTML.....) there isn't going to be much of a difference between a modem user
>or a broad band user. Text transfers pretty quickly....though you could have
>slow downs if there is just a ton of text being sent (like combo boxes that
>have thousands of items in their lists).  The final issue with this part is
>client side scripting.  I personally stay away from it like the plague,
>unless it's for in house projects where I know everyone is using IE. So try
>to make your applications run strictly with ASP, unless absolutely
>necessary.
>
>Third of the three.  The real nuts and bolts of ASP.  ASP can be written in
>JScript or VBScript.  Quite frankly I have never bothered to use JScript,
>since VBScript is practically second nature.  When writting ASP, you enclose
>the ASP code with <% and %> (start and end tags for ASP), and then write
>away with VBScript.  There are two things to remember/research. ASP is
>VBScript with extra objects (Application,
>ObjectContext,Request,ASPError,Response,Server,Session). The three you are
>going to deal with the most are Request, Response and Server.  Request gives
>you access to what you have been 'sent' by the user. It can be used to read
>cookies, server variables (which include Usernames, passwords,IP Addresses,
>browser types, etc.), and form data. Response is what you use to send data
>back to the user (response.write outputs to the HTML stream, redirect can
>actually change the URL the end user is receiving, etc.).  Server is the
>webserver itself. The two main methods you will probably use are
>MapPath(Which let's you map a virtual or actual path to a file) and
>CreateObject.  That CreateObject is the big catch with ASP and VBScript.  In
>normal VBScript you just call CreateObject.  But with ASP, you must use the
>Server Object's CreateObject method to create an object in VBScript.
>(Because the object must be created by the webserver).
>
>That's ASP in a nutshell.  The first item I talked about is a little
>difficult to figure out from the MSDN, the rest is in the MSDN, but can
>still be a little difficult to figure out.  The details on everything (HTML
>tags, ASP objects, etc.) are pretty much well explained in the MSDN though.
>
>The last thing you will need to know about ASP pages versus Access FE's is
>how to get data FROM the user. (we already discussed sending it to them,
>with the response.write method).  I mentioned the request object.  The two
>methods of getting data from the user are through forms and querystrings.  A
>querystring is what follows a URL (after a ?).  So, if you have a URL like
>this: http://MyWebsite.com/default.asp?MyValue=10 , you can retrieve the
>value of MyValue by using the request.QueryString method, like this:
>
><%
>response.write request.QueryString("MyValue")
>%>
>
>If you have an HTML form, and you POST the data:
>
><HTML>
><BODY>
><Form Name="MyForm" Method=post action="results.asp">
><input type=text name="MyValue">
><input type=submit>
></form>
></body>
></HTML>
>
>The resulting page will have a textbox, and a submit button.  Pressing the
>submit button will send the data within the MyValue textbox to results.asp.
>So if results.asp was this:
>
><%
>response.write request.form("MyValue")
>%>
>
>The results page will output whatever was in the textbox.
>
>The key difference between a QueryString and a Form is that QueryStrings are
>limited by the max length of a URL (which is, I think, 2048
>characters...maybe 1024 characters, not sure).  Where as a form is not
>limited in the amount of data that can be submitted.  You can also refer to
>a request 'variable' by just the request object.  request("MyValue") can be
>a value in either a QueryString OR a Form.
>
>Phew, what an email.  This was fun to write though.  Keep in mind that ASP
>doesn't directly like DAO, so write your code using ADO.  Feel free to
>contact me offlist if you have specific questions.  I may get hammered for
>the length of this email, but I think it's pertinent to Access development
>on the web!
>
>Drew
>
>
>
>-----Original Message-----
>From: paul.hartland at fsmail.net [mailto:paul.hartland at fsmail.net]
>Sent: Wednesday, November 26, 2003 9:55 AM
>To: accessd
>Subject: [AccessD] OT - Getting started with Web development
>
>
>To all,
>I'm looking to start writing web pages etc, secure logins, returning
>resultsets in tables from Access & SQL Server etc. Anyone know any good
>sites to get me started along with any book recommendations ? Thanks in
>advance for all your help Paul Hartland
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>
>
>****************************************************************************
>*******
>"This electronic message is intended to be for the use only of the named
>recipient, and may contain information from Hudson Health Plan (HHP) that is
>confidential or privileged.  If you are not the intended recipient, you are
>hereby notified that any disclosure, copying, distribution or use of the
>contents of this message is strictly prohibited.  If you have received this
>message in error or are not the named recipient, please notify us
>immediately, either by contacting the sender at the electronic mail address
>noted above or calling HHP at (914) 631-1611. If you are not the intended
>recipient, please do not forward this email to anyone, and delete and
>destroy all copies of this message.  Thank You".
>****************************************************************************
>*******
>
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>
>
>****************************************************************************
>*******
>"This electronic message is intended to be for the use only of the named
>recipient, and may contain information from Hudson Health Plan (HHP) that is
>confidential or privileged.  If you are not the intended recipient, you are
>hereby notified that any disclosure, copying, distribution or use of the
>contents of this message is strictly prohibited.  If you have received this
>message in error or are not the named recipient, please notify us
>immediately, either by contacting the sender at the electronic mail address
>noted above or calling HHP at (914) 631-1611. If you are not the intended
>recipient, please do not forward this email to anyone, and delete and
>destroy all copies of this message.  Thank You".
>****************************************************************************
>*******
>
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>
>IMPORTANT - PLEASE READ ******************** 
>This email and any files transmitted with it are confidential and may 
>contain information protected by law from disclosure. 
>If you have received this message in error, please notify the sender 
>immediately and delete this email from your system. 
>No warranty is given that this email or files, if attached to this 
>email, are free from computer viruses or other defects. They 
>are provided on the basis the user assumes all responsibility for 
>loss, damage or consequence resulting directly or indirectly from 
>their use, whether caused by the negligence of the sender or not.
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>
>IMPORTANT - PLEASE READ ******************** 
>This email and any files transmitted with it are confidential and may 
>contain information protected by law from disclosure. 
>If you have received this message in error, please notify the sender 
>immediately and delete this email from your system. 
>No warranty is given that this email or files, if attached to this 
>email, are free from computer viruses or other defects. They 
>are provided on the basis the user assumes all responsibility for 
>loss, damage or consequence resulting directly or indirectly from 
>their use, whether caused by the negligence of the sender or not.
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>
>
>****************************************************************************
>*******
>"This electronic message is intended to be for the use only of the named
>recipient, and may contain information from Hudson Health Plan (HHP) that is
>confidential or privileged.  If you are not the intended recipient, you are
>hereby notified that any disclosure, copying, distribution or use of the
>contents of this message is strictly prohibited.  If you have received this
>message in error or are not the named recipient, please notify us
>immediately, either by contacting the sender at the electronic mail address
>noted above or calling HHP at (914) 631-1611. If you are not the intended
>recipient, please do not forward this email to anyone, and delete and
>destroy all copies of this message.  Thank You".
>****************************************************************************
>*******
>
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>
>  
>

-- 
Marty Connelly
Victoria, B.C.
Canada





More information about the AccessD mailing list