Question

alternative solution to ASP include function?

Asked by: calvinfoo

assumed I have over hundreds of ASP files, and all files first and last line will have something like the following structure:

<!--#include virtual="/myproject/include/header.asp"-->

my body, contents, and ASP scripts here.....

<!--#include virtual="/myproject/include/footer.asp"-->



question:
If one day I need to move my virtual folder from "/myproject/" to "/myproject2/", I need to do a massive replace to all my ASP.

What I am trying do is to code and save the virtual path somewhere perhaps in global.asa, the point is to avoid doing a massive string replace to all my ASP file if one day I need to move my virtual path. What are the available options I can look into?  Thank you.


This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.

Subscribe now for full access to Experts Exchange and get

Instant Access to this Solution

  • Plus...
  • 30 Day FREE access, no risk, no obligation
  • Collaborate with the world's top tech experts
  • Unlimited access to our exclusive solution database
  • Never be left without tech help again

Subscribe Now

Asked On
2005-08-30 at 01:14:23ID21544503
Tags

asp

,

include

,

function

Topics

Active Server Pages (ASP)

,

Server Side Includes (SSI)

Participating Experts
7
Points
150
Comments
38

Trusted by hundreds of thousands everyday for fast, accurate and reliable tech support.

  • "The time we save is the biggest benefit of Experts Exchange to Warner Bros. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange." Mike Kapnisakis, Warner Bros.
  • "Our team likes having a resource that is more secure than just using Google and most experts using this service really know their stuff. It's nice to look here first versus using Google." Dayna Sellner, Lockheed Martin
  • "Anytime that I've been stumped with a problem, 9 out of 10 times Experts Exchange has either the accepted solution or an open discussion of the potential solution to the problem." Kenny Red, eBay Inc.

See what Experts Exchange can do for you.

Got a question?

We've got the answer.

Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.

Screenshot of Experts Exchange Knowledgebase

Need individual assistance?

Our experts are ready to help.

If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.

Screenshot of Experts Exchange Knowledgebase

Want to learn from the best?

Read articles from industry experts.

Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.

Screenshot of an Article

Working on a long term project?

Store your work and research.

Save solutions to your questions, answers you’ve discovered through searching plus helpful articles in your personal knowledgebase for easy future access.

Screenshot of Experts Exchange Knowledgebase

Access the answers to your technology questions today.

Subscribe Now

30-day free trial. Register in 60 seconds.

What Makes Experts Exchange Unique?

Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Trusted by the world's most respected brands.

image of each brand's logo

Faithfully serving IT professionals since 1996.

Experts Exchange Logo

Try it out and discover for yourself.

Subscribe Now

30-day free trial. Register in 60 seconds.

Related Solutions

  1. global.asa
    this is my question: What is the use of global.asa ? can you show me an "simplest and useful" example ?
  2. Global.asa
    It's gotta be a dumb question - How do I create the global.asa file? What are the required values? Any good reading on global.asa?

Free Tech Articles

  1. WARNING: 5 Reasons why you should NEVER fix a computer for free.
    It is in our nature to love the puzzle. We are obsessed. The lot of us. We love puzzles. We love the challenge. We thrive on finding the answer. We hate disarray. It bothers us deep in our soul. W...
  2. SCCM OSD Basic troubleshooting
    SCCM 2007 OSD is a fantastic way to deploy operating systems, however, like most things SCCM issues can sometimes be difficult to resolve due to the sheer volume of logs to sift through and the dispe...
  3. Migrate Small Business Server 2003 to Exchange 2010 and Windows 2008 R2
    This guide is intended to provide step by step instructions on how to migrate from Small Business Server 2003 to Windows 2008 R2 with Exchange 2010. For this migration to work you will need the fo...
  4. Create a Win7 Gadget
    This article shows you how to create a simple "Gadget" -- a sort of mini-application supported by Windows 7 and Vista. Gadgets can be dropped anywhere on the desktop to provide instant information, ...
  5. Outlook continually prompting for username and password
    There have been a lot of questions recently regarding Outlook prompting for a username and password whilst using Exchange 2007. There are a few reasons why this would happen and I will try to cover t...
  6. Backup Exchange 2010 Information Store using Windows Backup
    There seems to be quite a lot of confusion around the ability to backup Exchange 2010 using the built in Windows Backup feature. This stems from the omission of this feature prior to Exchange 2007 s...

Cloud Class Webinars

  1. Avoiding Bugs in Microsoft Access
    Alison Balter takes and in-depth look at avoiding bugs in Access. In this webinar you will learn about using the immediate window to debug your applications, invoking the debugger, using breakpoints to troubleshoot, stepping through code, setting the next statement to execute, ...
  2. Top 10 Best New Features in Visio 2010
    Scott Helmers gives live demonstrations of the top 10 new features in Visio 2010. This webinar will teach you how to create compelling diagrams by adding shapes to the page with a single click, linking the shapes in a diagram to data in Excel (or SQL Server, or SharePoint), ...
  3. IT Consultant Business Secrets Revealed
    Michael Munger, Experts Exchange tech pro and IT consultant, pulls back the curtain on his very successful businesses and answers question on every IT consultant and business owner should know about. He shares secrets on what he did to solve the 5 most common problems in IT, ...
  4. Disaster Recovery and Business Continuity
    Quest CTO, Mike Billon, gives an overview of the steps involved in building a dunamic disaster recovery plan. Through case studies and an examination of software/hardware tooles for monitoring and testing, you'll gain a better understandin of where you are, where you want ...
  5. Organize Your Visio Diagrams with Containers and Lists
    Scott Helmers uses cross functional flowcharts, wireframe diagrams, data graphic legends and seating charts to teach you: how to ustilize all three new structured diagram components in Visio 2010, the best practices for organizeing shapes in previous version of Visio, how to organize ...
  6. How to Us Objects, Properties, Events and Methods in Microsoft Access
    Alison Dalter gives an in-depbth look at objects, properties, events and methods in Microsoft Access. In this webinar you will learn about using the object browser, referring to objects, working with properties and methods, working with object variables, understanding the ...

Join the Community

Give a Little. Get a Lot.

Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.

Join the Community

Answers

 

by: REA_ANDREWPosted on 2005-08-30 at 01:38:07ID: 14782515


Save this as the only include for your pages.

<%
dim topPath
dim bottomPath

topPath = "<!--#include virtual="/myproject/include/header.asp"-->"
bottomPath ="<!--#include virtual="/myproject/include/footer.asp"-->"
%>

Then all you need to do is write this on each page

<%=response.write(topPath)%>  'for the top include file

<%=response.write(bottomPath)%> 'for the bottom include file

i think

 

by: thefritterfatboyPosted on 2005-08-30 at 01:39:56ID: 14782524

Personally, I'd stick with the replace method you are currently using. If you really want to use a variable in your global file then you can use these methods:

<%
Sub parseASP(ASPCode)
     dim y, x
     dim lasterror
     y = -1
     x = Instr(1, ASPCode, "<%")
     Do Until x = 0
       if x <> 1 then Response.Write(Mid(ASPCode, (y + 2), x - (y + 2)))
       y = InStr(x + 2, ASPCode, CHR(37) & ">")
       if y = 0 then response.write("Error: Unterminated delimiter found."):Response.End
       On Error Resume Next
       Execute(Mid(ASPCode, x + 2, y - x - 2))
       lasterror = err.number
       if lasterror <> 0 then
           Response.Write("<font color='red'>VBScript Runtime error:</font> " & lasterror & "<br>" & err.Description & "<br>Source: " & err.Source & "<br>")
       end if
       On Error Goto 0
       x = Instr(x + 2, ASPCode, "<" & CHR(37))
     Loop
     Response.Write(Mid(ASPCode, y + 2))
End Sub

function getFileContents(strIncludeFile)
  dim objFSO, objText, strPage
  set objFSO = Server.CreateObject("Scripting.FileSystemObject")
  set objText = objFSO.OpenTextFile(strIncludeFile)
  getFileContents = objText.ReadAll()
  objText.close
  set objText = nothing
  set objFSO = nothing
end function

Sub includeFile(strFilename)
  dim sz
  sz = getFileContents(strfilename)
  parseASP(sz)
End Sub
%>

All you need to do then is pass the filename into:

includeFile(server.mappath("/myfolder/include.inc"))

 

by: WhatIsTheJavaPosted on 2005-08-30 at 02:01:57ID: 14782606

What about including one file

and then having the include file in that file

i.e.

include myFile.asp




MyFile.asp
----------------
include myFile2.asp
include myFile3.asp
include myFile4.asp

etc ertc

 

by: kiddangerPosted on 2005-08-30 at 02:08:33ID: 14782631

I agree with java... that's all I do.

I have a header file that goes as an include in each file:

<!--#include virtual="/asp/header.asp"-->

In the header file I has other includes:

<!--#include virtual="/asp/config.asp"-->
<!--#include virtual="/asp/xmlcommon.asp"-->

Config.asp has all my constants and global variables and xmlcommon.asp has all my routines.

 

by: calvinfooPosted on 2005-08-30 at 02:31:25ID: 14782731

REA_ANDREW:
Come on, all ASP developers know it doesn't work that way and it is not simple as that.

thefritterfatboy:
For me, I would stick to the massive replace method I am using.  It is because my f*cking boss argued with me that there are some other alternate method that worked, and she claimed that it works (she hinted global.asa and XML file), which I believe it won't work because I am working on server side include, and I would agree with her suggestion if I am dealing with client side include.

If I understand your functions correctly, it means I still have to include these 3 functions in every page, it doesn't solve the root problem and yet created some other additional problem.

WhatIsTheJava & kiddanger:
My question is not about nested include problem.  in fact, the header.asp is actually includes many other ASP and function files as well.

I found this in the web, while trying to search for some answers... if only server.execute will not unload the script after that, then this function eventually solve my question.

http://www.4guysfromrolla.com/webtech/080199-1.3.shtml
Dynamic Include Files with Server.Execute
With ASP 3.0 you can use the Server.Execute method to kind of fake a dynamic include. With Server.Execute, the ASP page called is loaded, run, and then unloaded. This is great if you have some procedural ASP code you want to execute, but oftentimes developers fill #include files with commonly used functions. Assume that A.asp contains the code: Server.Execute("B.asp"). Because of the nature of Server.Execute, A.asp can't call any functions declared in B.asp! For that reason, Server.Executes are rarely useful for dynamic includes, in my opinion.  

 

by: thefritterfatboyPosted on 2005-08-30 at 02:38:17ID: 14782762

>>If I understand your functions correctly, it means I still have to include these 3 functions in every page, it doesn't solve the root problem and yet created some other additional problem.<<

Yes - you still have 3 includes but look at the way you are now calling them:

includeFile(server.mappath("/myfolder/include.inc"))

If you declare a global variable in global.asa, let's say:

Application("rootFolder") = "myfolder/"
(placed in the Application_OnStart sub)

then you'd use:

includeFile(server.mappath(Application("rootFolder") & "include.inc"))

Or - if you'd prefer to use a fully qualified directory path:

includeFile(Application("rootFolder") & "include.inc")

 

by: kiddangerPosted on 2005-08-30 at 03:58:12ID: 14783089

We have a different philosophy on how to separate projects.  However, to use Server.Execute to dynamically include code, you would have to do it on each page or have an include file for variables so you're really right back where you started.

I have a test with numerous pages:

http://kiddanger.com/lab/serverdotexec.asp
http://kiddanger.com/lab/serverdotexeca.asp
http://kiddanger.com/lab/serverdotexecb.asp
http://kiddanger.com/lab/serverdotexecc.asp

Now call them like this:

http://kiddanger.com/lab/serverdotexec.asp?q=a
http://kiddanger.com/lab/serverdotexec.asp?q=b
http://kiddanger.com/lab/serverdotexec.asp?q=c
http://kiddanger.com/lab/serverdotexec.asp?q=d

Source:

http://kiddanger.com/lab/serverdotexec.asp:
<%@ Language=VBScript %>
<%
Option Explicit
Response.Buffer = True

dim q
q = server.HTMLEncode(replace(replace(replace(Request.QueryString("q"),"'","''"),";",""),"--",""))
Response.Write Request.ServerVariables("SCRIPT_NAME") & "<br />" & vbCrLf

if q <> "" Then
  select case q
    case "a"
      server.execute "/lab/serverdotexeca.asp"
    case "b"
      server.execute "/lab/serverdotexecb.asp"
    case "c"
      server.execute "/lab/serverdotexecc.asp"
    case else
     Response.Write "Nice try!"
     Response.End
  end select
end if
%>

http://kiddanger.com/lab/serverdotexeca.asp:
<%@ Language=VBScript %>
<%
Option Explicit
Response.Buffer = True
Response.Write "This is serverdotexeca.asp<br />" & vbCrLf
%>

http://kiddanger.com/lab/serverdotexecb.asp:
<%@ Language=VBScript %>
<%
Option Explicit
Response.Buffer = True
Response.Write "This is serverdotexecb.asp<br />" & vbCrLf
%>

http://kiddanger.com/lab/serverdotexecc.asp:
<%@ Language=VBScript %>
<%
Option Explicit
Response.Buffer = True
Response.Write "This is serverdotexecc.asp<br />" & vbCrLf
%>

I am using a select case and coding the variables.  You would need this is all pages and I see that as extra work.  You could just write a routine to open all your files and replace that part of the line.

or

You could use FSO and open up the include file you want, when you want it.  That creates more disk activity.

or you could change your path...

If you have all your files under /myproject then don't start at the root...
use include/header.asp, include/footer.asp

Then when you move the files to /myproject2 they work.  This may force you to work with parent paths, which I don't like but it would solve your issue.

 

by: thefritterfatboyPosted on 2005-08-30 at 04:04:19ID: 14783115

>>or you could change your path...

If you have all your files under /myproject then don't start at the root...
use include/header.asp, include/footer.asp

Then when you move the files to /myproject2 they work.  This may force you to work with parent paths, which I don't like but it would solve your issue.<<

Personally, I think that's the best solution to this problem so far. My solution uses FSO and is more of a "hack" than a solution. Server.Execute is useless as I'm sure calvinfoo will want to call subs/functions contained in the include files and server.execute does not allow access to this (I'm not sure whether my solution actually allows access to any functions / variables to be honest - I've never used it in production)

 

by: aplimediaPosted on 2005-08-30 at 04:47:03ID: 14783425

You could use <!--#include File="..include/header.asp -->

Then the iclude is relative so no matter where you move the project to the file will always retain its relative possition to the include folder.

Hope this helps.

A

 

by: kiddangerPosted on 2005-08-30 at 04:47:57ID: 14783433

Well it would be less overhead but I hate parent paths.  I like knowing where I'm at and not wondering if I move a file to another folder if I'm here: / here: /asp here: /dev here: /blahblahblah.  And I despise this mess: ../asp, which is almost as bad as ./asp.  I think that's a *nix geek trying to code in ASP.  I think most of these are hacks.

I use VS6 and just make another website, create a new project and copy modular files I want to have in the new project.  No coding changes required.  It works for me.  I guess there is no perfect solution for everyone.

Oh, and Calvin.  I feel your pain.  You work for a woman who hints at what she wants and is willing to argue the point, but not specifically.

I think the reason she's being general is because she's talking off the top of her head and doesn't know for sure, which didn't seem to be reason enough for her not to take a side against you and argue her general point.  You gotta' love that.  The only other reason would be make your life miserable and it sounds like she's achieved her goal.  It's not you, it's them.  It just affects you.

I had a boss like this and I found that if you agree with them and ask for more detail, they either provide the information or talk themselves out of it.

Ex.

Boss: Me:

How can we do this?
Like this!
Why don't you research it?
I did.  This was the only way I could find to do it.  I google'd like a mofo.
Aaaaaaah, I don't like doing it that way.  Let's do it different.
It doesn't work any other way.
Well, I don't like it that way so I'm SUUUUUUUURE it works another way.  In fact, I read it once [12 million years ago when I was 6], in an article, in uhmmmmmmm ....ughhhhhhhh... well, go google it.  I'm sure you'll get a lot of hits.
Ok, sounds good.  I'll let you know.

(15 minutes later after visiting the rest room, kitchen and flirting with the gals in accounting...)

Hey boss, couldn't find anything on it.  Would you might trying to find that for me and emailing me the link?  I'd appreciate it.  As soon as you do, I'll get right on it.
Ok, I'll do that, this time, but you're going to have to learn how to find things with Google.
I'm trying boss.

(walks back to office never to hear of the issue again... ended up doing it the way I suggested in the first place)

Ok, I actually did search again and the scenario was changed to protect the guilty but it was close.  He'd argue just to argue.  You can't argue with your boss and win, ever.  Even when you win, you lose.  The best you can do it try to CYA.  What's that old saying?  Document, document, document.  As long as you keep good notes and do as your boss requests, you're protected, at least legally.

 

by: peterxlanePosted on 2005-08-30 at 08:41:05ID: 14785849

I also think using the relative paths is definitely the best solution.  

But in my mind, having to do a search and replace on hundreds of ASP files is really not a problem.  Write a VBScript that does all the searching and replacing and tell your boss that you can switch the path to anything you want and have it ready to go in 30 seconds.  That would be far easier than trying to setup some workaround or hack...


 

by: kiddangerPosted on 2005-08-30 at 10:44:28ID: 14787126

Agreed.  You could write that in about 30 minutes or less.

 

by: aplimediaPosted on 2005-08-30 at 10:50:34ID: 14787187

Alternatively, If using Dreamweaver, you could use the global find and replace, which will do the job in uder 10 seconds!

Use Find and replace with caution (Not un-doable) make sure you select the entire include statement. ie From "<!--#include virtual="/myproject/include/header.asp"-->" to "<!--#include File="..include/header.asp -->"

Of course thats only if all the files are on the same level! else back to peterxlane.

Regards

A.

 

by: kiddangerPosted on 2005-08-30 at 11:02:43ID: 14787308

Doing it in a VBS file and pass it two parameters and you don't have to load DreamWeaver.  Even the boss could do it then, or claim to.

 

by: calvinfooPosted on 2005-08-30 at 20:51:05ID: 14790751

I use HomeSite, doing a massive replace is very easy.

Oh well, seems like there aren't a solution for such problem.

 

by: kiddangerPosted on 2005-08-30 at 20:59:54ID: 14790781

After seeing some of the responses, this statement confuses me:
"Oh well, seems like there aren't a solution for such problem."

 

by: hujiPosted on 2006-01-08 at 10:56:34ID: 15642917

This question has been classified as abandoned.  I will make a recommendation to the moderators on its resolution in approximately one week.  I would appreciate any comments by the experts that would help me in making a recommendation.

It is assumed that any participant not responding to this request is no longer interested in its final deposition.

If the asker does not know how to close the question, the options are here:
http://www.experts-exchange.com/help.jsp#hs5

Huji
EE Cleanup Volunteer

 

by: aplimediaPosted on 2006-01-09 at 00:28:40ID: 15646805

This question was comprehensively addressed by a number of experrts.


Aplimedia

 

by: hujiPosted on 2006-01-09 at 12:25:10ID: 15653465

Thank you aplimedia, for replying to my message. Would you please be more definite, and tell me which comments you appreciate as comprehensive answers to this question?
Regards,
Huji

 

by: kiddangerPosted on 2006-01-09 at 19:13:51ID: 15656781

Relative paths is probably the simplest solution so nothing has to be changed, except using a replace method to change all the current pages once.  (O;=

A replace method will work and only be required once each time it changes.
A new boss is another alternative but he could get another woman and there may not be any grass on the other side of the fence or there may be a grass fire.
The method he's using now is working.  How often is he doing it?  Even if it's once a month, it takes less time than arguing with his boss.
My question is why tie common routines to project folder names?
/asp/anyfilename.asp

Each project can still have a project name and have an /asp virtual path.

 

by: aplimediaPosted on 2006-01-10 at 05:10:56ID: 15659791

>>huji


Its my opinion that this question was addressed at length and from various perspectives and methods. However, I strongly believe the practical and concise answer  was.

http://www.experts-exchange.com/M_3509416.html

Assist peterxlane

All objections welcome.

Aplimedia

 

by: hujiPosted on 2006-01-10 at 07:57:50ID: 15661625

@aplimedia,
Thanks again for your help aplimedia.
The link you provided is to your profile page, and you have to comments here in this thread, prior to my cleanup message. Did you think this comment {http:#14783425} is the answer, or this one {http:#14787187} ?

@peterxlane,
I want to hear from you as well please. It is important which comments we choose as the assisting ones during the cleanup process, since the future visitors will get reach the answers faster.

Thanks
Huji

 

by: aplimediaPosted on 2006-01-10 at 08:00:33ID: 15661662

@ sorry.. this addresses the crux of the issue.. {http:#14783425}

Aplimedia

 

by: hujiPosted on 2006-01-10 at 08:03:39ID: 15661695

Thanks again.
Huji

 

by: kiddangerPosted on 2006-01-10 at 12:37:22ID: 15664767

I had already suggested it here: http:#14783089

>>If you have all your files under /myproject then don't start at the root...
use include/header.asp, include/footer.asp

Then when you move the files to /myproject2 they work.  This may force you to work with parent paths, which I don't like but it would solve your issue.

fritterfatboy agree.

>>Personally, I think that's the best solution to this problem so far.

And, he still has to use the replace method once, as I stated here:
http:#15656781

 

by: hujiPosted on 2006-01-10 at 12:54:05ID: 15664954

So which one do "you" think is more fair: An accept, or a split?

 

by: thefritterfatboyPosted on 2006-01-10 at 13:08:05ID: 15665113

Just to post my two cents and not seem like I've abandoned this topic! ;)

There is no solution to this problem that doesn't involve a replace of some form. It's impossible. Kiddanger's solution is my favourite and utilises a part of IIS designed to do exactly what the original asker is wanting. Not wanting to take anything away from the other experts, who also contributed good solutions, but I liked the simplicity and scalability of this solution.

 

by: kiddangerPosted on 2006-01-10 at 14:17:51ID: 15665847

Ok, this is my broad opinion of how I think EE should work.  To bring you up to date, I have been told NO, THAT IS NOT HOW IT WORKS!

The first person with a workable solution gets the points.
Anyone posting within a few minutes of each other with similar solutions may produce a split, the first being accepted.  There is no reason to accept both if the first solution satisfies the question.
If multiple people contribute to a long thread and multiple solutions are provided, then it is the author's choice but weight should be given to the first, second, etc. in that order.

They said the user decides and only if you whine and request a review, and only if the mod agrees, then it may be overridden.  Translation: I have a voice but my words may fall on deaf ears.

A common problem is when the author doesn't return and we have to them determine, through campaigning and debate, what the final outcome should be.

I'm not against a split of a long thread where so many contributed and multiple solutions were given.  I think we should have a voting button and let it be a democratic process.  I just want it to be fair to everyone.

Just to note, this does not work: <!--#include File="..include/header.asp -->
Why?  the second include is a folder (subdirectory).  You cannot go up the tree one level and then down the tree to the include folder without using a slash (/).

It should be <!--#include file="../include/header.asp"-->

It is also missing the second double quote.

Those are syntax errors but that is not the main reason why I have an issue with it.  Using parent paths means they must be enabled.  Parent paths have been proven to be a security risk because you can actually reach above the webroot if they're enabled.  While you can block parent paths on a URL, the webmaster can potentially make their site vulnerable without being aware and have a false sense of security.

And they have to be enabled and on IIS6, they're not by defaut.
http://support.microsoft.com/default.aspx?scid=kb;en-us;332117

I ALWAYS use virtual.  Why?

It cannot use parent paths and I always know where I am.  I don't have to worry if I'm in the include folder or somewhere else.  It always starts as the virtual root of the site.

<!--#include virtual="/include/header.asp"-->

In this case, the problem is the folder name changing for a new project.  If you use "include file" and do not use parent paths, you can accomplish the goal but a replace will have to take place once to modify the code so it meets this design change.

The real problem to this issue is the structure and really nothing to do with the code.  Perhaps we should have touched on that.  A web host uses this method so they can control the security for their users and still provide them a seemless setup.

d:\websites\domainname\

That is the virtual root.

d:\websites\domainname2\

...is another.

Now the code doesn't matter.

Clearly the author doesn't want a new virtual web for each project [or do they?].  To borrow from this idea, they can take it down the tree.

They could make a virtual directory of: /project1, /project2, /project3
That is the webroot for each project then make DNS entries for 3rd level domains.
project1.domain.com
project2.domain.com

Now, all folders beneath the [simulated] web roots are the same.  No code changes [except once] and they all look the same re: structure.

 

by: kiddangerPosted on 2006-01-10 at 14:28:29ID: 15665953

What I forgot to add is if you split, then all valid solutions should be included.  This means fritterfatboy, aplimedia and myself.  I would include peterxlane but he was just agreeing with what had already been suggested.  The author can already perform a search/replace without writing a script.  We have to remember, this is not a daily task.  It is only performed when new projects come along.

If you're only considering the relative path, then I don't see a need for a split because they're different.

1. no parent paths in my suggestion
2. the conversation had already been going on for hours when aplimedia entered the discussion and his suggestion, although somewhat different and possibly requiring a security modification, was almost 2 hours later.

I really hate having to campaign for points.  The EE model is broken and should be reviewed so we don't have to go through this process.  We should be working together, not against one another.

 

by: hujiPosted on 2006-01-10 at 23:42:10ID: 15668625

kiddanger,
1) EE points are supposed to work as an stimulant for experts, nothing more. If you feel they are having another impact on the community, here is not the correct place to argue about it, as you know.
2) My task is to choose the best answers in the above comments. It may seem like helping "experts getting their points" at the first glance, but, at least in my opinion, there is a deeper reason behind this: To let the future viewers of this thread, reach the best solutions, without a need to read the whole thread. If it was only to let the epxerts get their points, I could simply report the first or last comment by an expert to be accepted, but I don't. I've asked you for your recommendation to help me make the most fair decision about which comments should be included in the acceptance list.
3) Just in order to clarify myself more, by asking this question:
So which one do "you" think is more fair: An accept, or a split?
I meant to know your (and others'_) opinion on weather a special comment can be chosen as a complete answer to the thread, or several comments should be chosen as completeing each other.
Thanks a lot
Huji

 

by: aplimediaPosted on 2006-01-11 at 00:33:33ID: 15668760

@huji

1 - kiddanger does have a good point, and I am guilty becuase I did'nt realy read a lot of his comments (Untill now!). No dis-respect meant to kiddanger, he obviously is a very knowledgable expert, however his posts here are a mesh of off topic chit-chat and valid ASP methods, and at the time I only saw the chit-chat and therfore skipped his comments.

I should have read them.

2 - The original question ends... "What are the available options I can look into?  Thank you."
I think the question was well answered because 'Several' options were presented.

Therfore revised recommendation . Agree with comment from Kiddange:

fritterfatboy, aplimedia and Kiddanger.

PS. It really is not about the points - but the principal.

Kind reagrds

Aplimedia

 

by: kiddangerPosted on 2006-01-11 at 01:04:12ID: 15668867

aplimedia obviously is able to get his point across better than I.  We are all here to help others.  I don't know why I feel guilty pleading my case for my suggestions, but I do.  I think I'm fair because I do plead for others when asked.

 

by: aplimediaPosted on 2006-01-11 at 01:59:51ID: 15669105

@Kiddanger

I think you are fair, and you were right and I'm agreeing with you...

Kind regards


Aplimedia

 

by: kiddangerPosted on 2006-01-11 at 18:41:23ID: 15678293

aplimedia...

Thank you for your comments.  The downside is my ex-gf's are going to start using your name with adjectives, like mine.

 

by: hujiPosted on 2006-01-19 at 00:48:36ID: 15737160

No comment has been added to this question in more than 21 days, so it is now classified as abandoned..
I will leave the following recommendation for this question in the Cleanup topic area:
Accept kiddanger's comment {http:#15665847} as answer.

Any objections should be posted here in the next 4 days. After that time, the question will be closed.

Huji
EE Cleanup Volunteer

 

by: kiddangerPosted on 2006-01-19 at 01:11:05ID: 15737244

I thought we were going to split?!

 

by: aplimediaPosted on 2006-01-19 at 01:13:37ID: 15737255

I've given up on this!...

@Huji - Whatever...


regards


Aplimedia

20120131-EE-VQP-002

3 Ways to Join

30-Day Free Trial

The Experts

98% positive feedback on 31,087 answers since March 2000. angeliii is a Microsoft Most Valuable Professional for his work with MS SQL Server & Develoment.

He has also proven his knowledge of Visual Basic Programming, PHP Scripting and Oracle Databases.

The Experts

97% positive feedback on 10,752 answers since July 2000. lrmoore has more than 18 years experience in the networking industry.

The six-time Mircosoft MVPs specialties include firewalls, virtual private networking, and network management.

Testimonials

"...and excellent source for support... Kind of like having your very own IT dept." Electriciansnet

Testimonials

"I was apprehensive at signing up at first. However... it has already made my life as an IT administrator much easier." JaCrews

Testimonials

"WOW! You guys have great, active, and knowledgeable people on here." moore50

Business Clients

Business Clients

In the Press

"If you’ve got a question... Experts Exchange can supply an answer.”

In the Press

"...an invaluable aid for both IT professionals and those who require tech support."

In the Press

"where IT professionals provide quick answers on just about any topic"

Business Account Plans

Loading Advertisement...