MattEvans 473 Veteran Poster Team Colleague Featured Poster

the only way you could do that would be if your first window is opened by javascript (or maybe by named target).

otherwise, it would be an irritation risk if sites could close the browser.

if you want the parent window to close when a new page opens, why not just open the new page in the same window?? O_o

MattEvans 473 Veteran Poster Team Colleague Featured Poster

http://www.w3.org/TR/css3-hyperlinks/

god only knows which browsers are using CSS3 yet; and even then, I wouldn't rely on it working until everyone's upgraded all of their browsers.

I stick with IE6; and I have no plans to change that on dev workstations until it isn't the most common browser for users...

MattEvans 473 Veteran Poster Team Colleague Featured Poster

if you setup a goal to write your own CMS soon you will end up the same problems as other CMS's encountered. You may not foresee some problems that will require minor or major code rewrite and it may took some time - 1-2 month(s).

1 - 2 months is quick!

I've been working on a CMS for about 6 months. It's almost past Beta 1 stage =P

I disagree about encountering the same problems as with other CMSs (different goals have even more different solutions); and the long time is generally down to the constant feature adding and isolated testing and then composed re-testing and then repeat and then repeat.

Minor and major code rewrites are a part of every software project.

EDIT: Wow this is an old thread O_O

MattEvans 473 Veteran Poster Team Colleague Featured Poster

I propose as a solution, more high level domain groups!

Or even customized ones:

Can't get your hands on the domain 'http://adobe.com' for your circus troupe's homepage because some backwater company's got it already? Why not get 'http://acrobat.adobe'?!

Every name available for a 30-second free-for-all!

...

It would probably cripple the Internet ^_~

MattEvans 473 Veteran Poster Team Colleague Featured Poster

Using the target _blank attribute on a hyperlinked anchor tag is generally more likely to get past popup blockers...

That's not so good because you can't control the spawned window's size directly or open the new window automatically.

Some popup blockers would object to this kind of popup aswell O_O

MattEvans 473 Veteran Poster Team Colleague Featured Poster

I see the main bar on the left looking a bit strange using Opera 9 under Linux Mandrake. The picture attached shows how I see that region.

I can't really help you with hacks, But I'd advise the use of tables for tabular parts of a layout =P.

Is that the same problem you were having in Safari?

EDIT: Post up a screenshot of how that region should look, or even how the whole page should look. It will help anyone who checks the link for you to look for differences.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

you can't do it automatically. (well, you can't do it automatically without instructing your server [or some javascript] how to do it automatically)

if your pages are all static, and there is strictly one category for each page, then you'll have to make each page with a slightly different link bar, reflecting the current category.

obviously, thats not a very manageable solution. a better way would be to order your pages with each folder being a category, store a category link bar in each folder. then you just have to include the current folder's link bar on every page using a relative include.

you could do that in PHP or good old Server-Parsed HTML.

this forum does it by always outputting final pages that are server-generated. adding that link bar is easy with a complex system in place already.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

I'd be up for it, t'would be a laugh.

I live in Sowf Eas' Lund'n.

(Warning for people not from South East London, that is how I talk)

I'm free any date after tomorrow.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

does it work in Firefox if you use one of those atttribute values instead of just 'selected'?

it's not so much a question of staying valid, as being compatible.

an absolutely 'correct' XML parser should reject that line of code and output a warning/error message instead of an expected output. But, Firefox only ever truely parses a page as X(HT)ML if you serve the Content-Type:application/xhtml+xml* header.

* not sure if that's the correct type, it's not an easy one to remember.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

are you using an HTML or XHTML doctype?

in HTML doctypes it's ok to set boolean attributes without values, in XHTML doctypes it is not.

in XHTML you have got to use:

selected="selected", or selected="yes", or selected="true"

MattEvans 473 Veteran Poster Team Colleague Featured Poster

I registered a name on 2 TLDs (I wont mention the name), and the next day a group whos website claims they 'protect .org domains for the good of society' (or something like that) bought up the .org version of the name.

They may or may not be legitimate: .org is supposadly reserved for 'organisations'. Luckily, I wasn't interested in the .org version of the name; if I was, I'm sure they'd have accepted a financial agreement, whatever their legitamacy. o_O

The moral - if you want lots (or all) of the TLDs on a name, buy .org first =P

MattEvans 473 Veteran Poster Team Colleague Featured Poster

try:

HTTP/1.1 200 OK
Server: XXXXX
Accept-Ranges: bytes
Content-length: 328
Connection: close
Content-type: text/html; charset=UTF-8
MattEvans 473 Veteran Poster Team Colleague Featured Poster

My pleasure; post back if you're still having problems.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

Sorry, I'm tired. Okay, the image doesn't show up at all for the above code. I'm using Firefox 2.

set the div background or borders to blue and see if you can see it.. that CSS should work for an absoulute position

MattEvans 473 Veteran Poster Team Colleague Featured Poster

but, having a stab at it.

I guess the problem is as I mentioned:

you may find that that div does start scrolling with the page as it has a fixed anchor point. I dunno though: there is definately a calculatable compensation for the background attachment, it's just a question of whether browsers chose to make it.

The background position is fixed relative to the scroll within the div, but that div isn't ever going to scroll

Is there a reason you can't use the body tag for the background?

I would try using a fixed position div behind the main section of your page... It doesn't work in IE usually as I said, but there's workarounds, as I said:

http://www.cssplay.co.uk/layouts/fixed.html

MattEvans 473 Veteran Poster Team Colleague Featured Poster

it would be more helpful for me and anyone else who may have some helpful ideas, and thus for yourself; if you say what isn't working.

- did it crash your computer? (hopefully not)
- did it show up fine in the correct place initially, but not remain fixed with relation to scroll?
- or somewhere inbetween?

MattEvans 473 Veteran Poster Team Colleague Featured Poster

your div has no width or height. if it has no content, then it will be approx. 0 pixels high and wide, and will not show up atall.

this is always true, but is more noticeable with absolutely positioned divs.

either put some non-visible content in the div (hacky), or set a fixed width and height (advised).


you may find that that div does start scrolling with the page as it has a fixed anchor point. I dunno though: there is definately a calculatable compensation for the background attachment, it's just a question of whether browsers chose to make it.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

EDIT:
I see your edit, there is a way to make a fixed background:

http://www.w3schools.com/css/tryit.asp?filename=trycss_background-attachment

If you do that, you could use the body section to supply the background, rather than another div.

It's better to use the body section for backgrounds, divs sometimes don't fill the body's vertical height without hacking around with margins and paddings...

MattEvans 473 Veteran Poster Team Colleague Featured Poster

I can't see that image.

There is a 'fixed' CSS attribute that gets mentioned in that thread.

A little research shows that it's not properly supported in IE6.. But it also shows some workarounds:

http://www.cssplay.co.uk/layouts/fixed.html

If you're already using this, I don't understand the question.

The answer to:
How to fix an image outside the <body> tag? Can it be done?

is No. you can't reliably do anything with elements/tags/sections that are not in the correct hierachal position. But, there should never be a need to break the HTML hierachy in an HTML file.

EDIT:
I see your edit, there is a way to make a fixed background:

http://www.w3schools.com/css/tryit.asp?filename=trycss_background-attachment

MattEvans 473 Veteran Poster Team Colleague Featured Poster

is this problem similar to yours?

http://www.daniweb.com/techtalkforums/thread63900.html

either way, you can't position anything outside the body tag or section. you can make it appear to be so, but breaking HTML rules causes weird behaviour.

<html>
<body>
(everyything you want to show should be in here)
</body>
<div>
(anything you put here is illegal, and will not work atall on some browsers)
</div>
</html>
MattEvans 473 Veteran Poster Team Colleague Featured Poster

floating is calculated top-down:

<b></b>
<a style="float:left;"></a>
(from left-right/top-down, b will always come first)
<a style="float:left;"></a>
<b></b>
(from left-right/top-down, a will always come first)

if you want your navbar div to always be in the top left area, place its code before the main div code.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

the 'integrity' is only verified when trying to talk back to a webpage from js.

there's no way to stop someone changing the implementation of a cached javascript file associated with your webpage, and you should plan and design with that in mind.

you can prepend 'Cache-Control:NO-CACHE' to the HTTP headers that get sent out with .js files to prevent them ever being cached (how to do that would depend on your server software), but even that wont stop people forcing them to cache if they have a desire to.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

you shouldn't position anything but a <head> section outside a <body> section in your code.

but, you can make the div with the image in it on a separate 'layer', by putting it into a div like this:

<div style="position:absolute;top:0;left:0;">(picture here)</div>
MattEvans 473 Veteran Poster Team Colleague Featured Poster

The basic principle is: pick a suitable server side language, then pick a data strategy/format, then pick a visual template. Then in your chosen language, write code to transform your data into a page based on the visual template. Now you only need to change data files.

Obviously, the difficult part is chosing how to store your data, how to read and process your data (using a database connection or text file parsing), and how to change your data (online modifications [maybe via a webbased 'control panel'] or offline via upload).

It's better to ask more specific questions than very general ones. A project specification/expectation is still something very general.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

They'll both be equally easy and difficult to learn. As of PHP 4 (I haven't used 5 yet); you'll find JavaScript is a much better implemented and thus much more intuitive language.

They both do different things though.

For 'live' events on a page (things that change the HTML document without reloading it for example) PHP isn't going to work atall. You'll need to use JavaScript.

If you want to prepare the page on your server before the user gets into it, JavaScript isn't going to work (unless you use ASP, but then you're really using ASP rather than JavaScript). PHP is suitable for this kind of thing.

If you want to do both at the same time, you'll need to use some handy Javascript objects that let you communicate back to your webserver.

Yes, you can use text files to replace databases. PHP is more optimized to work with databases, but you'll find that you can use a variety of methods to store and retrieve data.

You can't store and retrieve data in JS alone, but you can create scripts on the server to do tasks like that, and then call them form JS using those 'handy objects' I mentioned.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

you can't create an Ajax application in PHP. You can have an Ajax application served through a PHP process, but Ajax is 'Asynchronous Javascript And X(h)tml'.

Asking how you make one is like asking how you make an HTML page. Big question, and you only want one part of the answer.

Lookup: JavaScript, XMLHTTP requests in JavaScript, and the W3C XHTML DOM.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

It's all a bit relative really.

There can definately be a legitimate trading of domains that have no real relation to a specific company. An Internet company might chose to name its product or even itself based on the availability of a domain. In that case, there's no moral question involved. The 'nicest' generic names are either in use or in holding, and they'll cost according to their niceness and the amicability of their present owner.

Deliberately buying a domain that's similar to a company name is usually only done to ransom the company, or misdirect and defraud users.

But, whether it's right or wrong to register a similar sounding name to an existing company is a compound question with a compound answer.

A lot of laywers get a lot of money for answering the question everytime it comes up. it's a silly case where so much money gets spent trying to prove that company A is 'emulating' or 'stealing' company B's face, and why they are doing it.

In my eyes, it's legal to buy any domain name, and it's legal to sell any domain name; unless a specific 'real' crime has been comitted (like fraud, slander or murder), it's just bad luck if someone else gets the domain you want, or a domain like yours.


I don't think I'd make much money as an intellectual property lawyer... But I'd consider myself a higer form of life if I was a …

MattEvans 473 Veteran Poster Team Colleague Featured Poster

try the first way.

the second way executes at an arbitrary time (possibly as it is encountered and thus before the document is loaded); the first way executes when the document has finished loading.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

what about the event that calls that function during loading? is it called like this:

<body onload="loadJSintoDIV(etc);">
...

or like this:

<script type="text/javascript">
loadJSintoDIV(etc);
</script>

or by some other means?

MattEvans 473 Veteran Poster Team Colleague Featured Poster

what happens if you try this code:

function loadJSintoDIV(id, url, switchdiv) {
     obj = document.getElementById(id);
     if(obj.innerHTML == '' || !switchdiv) {
         oelem=document.createElement("script");
         oelem.src=url;
         oelem.type="text/javascript";
         oelem.defer=true;
         document.getElementsByTagName("head")[0].appendChild(oelem);
 
         obj.style.height = '';
         obj.style.visibility = 'visible';
     } else {
         obj.innerHTML = '';
         obj.style.height = '0px';
         obj.style.visibility = 'hidden';
     }
     alert('test');
 }

Notice the movement of the alert() line. This isn't an attempt to solve your problem, but let me know if it has the same effect as having the alert() line first, or if there is a difference

MattEvans 473 Veteran Poster Team Colleague Featured Poster

Where, or if you prefer when, is this code executed?

To be precise, what event* do you use to execute the function?

I ask that because, (I'll go out on a limb here) the code may be being executed as the page loads, but (perhaps) the script can only function correctly when the page is loaded fully. Forcing you to answer a modal message box {via alert()} causes the execution of the remainder of the function to be temporarily paused, meaning that when the important parts of the function are executed, the page has loaded.

Like I hope that I implied, that's an assumption founded on a working knowledge rather than any practical tests or even directly related experience**. The easiest way to find out if this is the case is to try putting the alert() after the function's main body, and posting back what happens.

Also; do say where the code is called from/when it is called.

*'inside script tags' is a viable event of sorts.
**or infact, a complete understanding of what you're trying to achieve. If you're calling this function from a user invoked event (like a click) on a fully loaded page; I have no idea.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

The domain 'fvrt.com' might be useful to the 'Flooberry Vertigo Radish Troopers Inc.' but to anyone else it's pretty much worthless.

If there's no brand or company identity associated with an acronym, it's very unlikely that even a company whos name or brand could fit a non-pronouncable acronym would have any particular interest in that domain name...

For example, the aforementioned fictional group may be more interested in a 'regularly priced' domain 'flooberytroopers.com' than an auctioned domain that's an acronym for the groups registered trading name.

Demand is the issue really.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

you could also serve RSS to your users.. but serving RSS to humans is only really of benefit if your site publishes important information frequently, and if people are sufficiently interested in that information.

you can use RSS sort of like textual radio: if my desktop RSS aggregator is listening to one of your webserver's RSS feeds, it will make a "ding" noise when it notices that the feed has changed, and give me a popup with a link to a page of your website with a brief summary of why I should be going there.. Feeds aren't entirely like radio, because a feed doesn't have to be 'seen in real time' for an interested user to get it in their aggregator.. {I use the Financial Times RSS aggregator (it's not one of the best) but it does a 'tickertape' accross the top of my desktop showing all 'current' stories}

RSS is one of a number of XML-over-HTTP syndication languages. If you can find a good potential use for that kind of technology, you'll know why it's of benefit.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

are you 'skinning' your myspace profile or emulating myspace?

if you're skinning your profile page, it'll take more time and effort than just making your own website, or using a profile site that's more customizable.

myspace is horrible to customize. it's not easy to do for one, and more importantly, 99% of customized profiles look abhorent, and the ones that look ok seem totally out of place.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

Just a quick tip, you shouldn't need to change the #! line in all your modules; just change it in the ones that are directly executed (.pl or .cgi)... the perl interprettor at the first location should figure out that the rest of them are irrelevant...

at least... i think it works that way ^_- Personally, I always put the environment's perl location in a #! in any .pl or .pm file..

EDIT and a quick test proves that that's a waste of a whole line per module :o

MattEvans 473 Veteran Poster Team Colleague Featured Poster

XSLT
WML


FUSE is in quite early stages at the moment... it's my own content management meta-language... It's getting quite advanced now, I'm only just starting to document it. It runs offline and online, so it would do what you're looking for, and more.

Personally, for non-dynamic pages, I always use offline XSL transformations.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

well, I found a good "first-thing" to do with test scripts is to change the .pl script first line to:

#!"C:\ActivePerl\bin\perl.exe"

(if that's where your activeperl is)... that stops you needing to extend the tiny Perl version that comes with XAMPP...

Setting that first line is probably the most important thing to do, especially if you use alot of ActivePerl modules.
That message generally means the script threw an error before it sent a content type...
add a use like this:

use CGI::Carp qw(fatalsToBrowser warningsToBrowser);

and then send a "Content-Type" header of text/html before you do anything else....
Without Carp (CGI debug) switched on,; missing modules can be a cause of that kind of error.

Mushy-pea commented: Usefull information. Thanks. +1
MattEvans 473 Veteran Poster Team Colleague Featured Poster

Context autocompletion is ok, but autoclose and auto 'put what should be here' drives me crazy... In Quantra (and I think Dreamweaver) putting <table> throws in a <tr><td></td></td></tr> aswell by default,

Quantra's auto "sanitise" code is terrible aswell... Imagine if every time you close an element, the editor tries to find the corresponding start tag, and replaces its tagname with whatever you closed with... Now imagine it doing that if you're typing tags in 'backwards' for whatever reason.

At least it's easy to turn off...

Context CSS assistance in Quantra is pretty terrible aswell.. It assumes that, whatever style you're defining, after every prop:value; line, you want the first alphabetic property in there aswell (background). And no keypress will stop it putting that background: line into the style. You actually have to use the mouse to get rid of it. Almost makes me wish I used VI instead =P

With context and autocomplete, it has to have been well written and rigourously tested or it's better turned off. Dreamweaver's is quite well done, but I find it's not particularly configurable.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

I kind of get what you mean, like search for a keyword, and then search for your page's rank on that keyword...

There are free-standing SEO programs that do this for you; effectively they do just do a google search and then look for your site in the results... I use a free version of IBP (www.Axandra.com) to check out my site every now and again, I think the paid version has alot more functionality for search result analysis.. but even the free version is worth checking out.

This is also worth checking out if you're interested:
http://code.google.com/enterprise/documentation/xml_reference.html
You could issue a request for a search term, and then very quickly process the results yourself to find your site's inclusion point. You'd have to write your own result processor, but it wouldn't need to be very advanced if you just want a quick one-off answer.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

It's possible to put hooks into almost anything to do almost anything... But if your intended system is to be really customised, you may be better off buying or having something produced to meet your exact requirements.

Integrating a payment system into a forum probably wouldn't be too challenging; vBulletin is quite a big name, so I imagine they have a good application interface and developer community.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

...KevinADC o'er at the Perl board may have some worrying probs to disclose about the use of XAMPP, I read this right after I advised you to use XAMPP:

http://www.daniweb.com/techtalkforums/thread64960.html

MattEvans 473 Veteran Poster Team Colleague Featured Poster

if that isn't sufficient, you could run a full distribution of the Apache webserver locally... Apache is a bit meatier, and more configurable. But, I found XAMPP to be useful for small tests.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

I just advised someone to try that out (XAMPP)... I've never had problems with it, but I never used it all that much...

What are the specific problems with XAMPP? It's quite a 'light' distribution lets say, but it seems to do what it says it does...

MattEvans 473 Veteran Poster Team Colleague Featured Poster

hey, no worries, i found the caller() function... even better i can call it retrospectively:

($package, $filename, $line, $subroutine, $hasargs, $wantarray, $evaltext, $is_require, $hints, $bitmask) =
      caller(0); 
caller(0) : details about this function
caller(1) : details about the last function
caller(X) : etc

Now I only have one lookup; for 'internal' error type defintion... ^_-

MattEvans 473 Veteran Poster Team Colleague Featured Poster

In certain cases, it's correct for my app to die if it encounters a potentially dangerous condition... I'm working on a more detailed error reporting system, and among the things I want to list are; the object class that threw the error, and the method that threw the error. At the moment, all potentially dangerous objects have a method that 'builds' an error object, and all the potential 'die' situations call this method, something like this:

sub _procError{
  my($self,$processor,$fnc_ref,$err_desc) = @_;
  my($err_message) = {};
  $err_message->{detector} = $self;
  $err_message->{function} = $fnc_ref;
  $err_message->{description} = $err_desc;
  return $processor->criticalError($err_message);
}

#And if a failable condition is met within an object method:
return $self->_procError($fuser,FNC_HTACCESS,"The path $p_name didn't validate correctly") unless $dir_name;

The 'processor' object referenced in the _procError() function causes the system to shut down and displays the contents of that error object (after adding its own internal states to it) whenever criticalError() is called...

At the moment, I use a constant enumeration for the functions in each plugin module object (FNC_HTACCESS is a function name, and that constant is defined in the package, along with all other function names)....

This doesn't translate well to a meaningful notification of where the error was detected, without using a lookup or complex conditional within each object. Is there a way to just reference the 'name of the running function'? It would make this alot easier to implement =P

I don't want to instantiate a lookup table in every object regardless of errors, so …

MattEvans 473 Veteran Poster Team Colleague Featured Poster

You can run a small webserver like xampp;
http://www.apachefriends.org/en/xampp.html.

It will support an ActivePerl integration in Windows, and their site says it works in Windows 98. You don't need to connect it to the Internet; just run the xampp_start program and then all pages in the xampp/htdocs directory will be available from http://localhost/ as if they were on a server.

It's a really non-envasive package as well.. you can put the xampp folder on a CD/USB disk, and use it anywhere without installing it.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

you can do a search like this:

site:http://yourdomain.tld cabbage

to search for all instances of 'cabbage' in your indexed pages... or leave off the search term to just find all of your indexed pages..

as for keywords, i find these two sites are good for 'honing' your keywords:
http://www.widexl.com/remote/search-engines/metatag-analyzer.html
http://www.gritechnologies.com/tools/spider.go

webmaster central at google http://www.google.com/webmasters/ should give you a bit extra info if you've registered your domain..

with google, you can't search in results... there used to be search engines that let you do that, I can't remember any of them anymore... I suppose they don't have it in google because you have quite alot of control in a single search; a search for 'computer programming' (w/o quotes) is a search for pages with programming in pages with computer.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

hm... i haven't used IE7 very much, and I don't use it home or I'd check that out... but, try something even more simple:

<html>
<body onload="alert('Javascript is functioning correctly');">
</body>
</html>

if that doesn't work, then JS may be disabled... there is an option to disable it, but I'm pretty sure the default is enabled... Have a look in all the options dialogs for reference to 'letting pages run scripts'

there's always a more 'strict' environment on local pages/scripts than on pages that are on a webserver. i guess that's because web scripts have request access to their immediate locality.. and you wouldn't want to download a script that had request access to your filesystem... so, if all else fails, try uploading the script somewhere to test it.

MattEvans 473 Veteran Poster Team Colleague Featured Poster

The thing I have problem with now is things that come uncompiled... sometimes I get a good thing and have no problems (Apache worked fine) other things just explode when they hit GNU C++... I don't know if its actually serious problems with the programs I've tried to install, or the G++ being too strict for its own good....... but nonetheless.. it's annoying.

I can't get Hydrogen (http://www.hydrogen-music.org/) to work.. and I'd really like it to; but it only comes uncompiled, and blows up on G++ and the Intel C++ compiler... I spent hours trying to get that to work, so maybe that's when I satisfied the FF dependancy...

MattEvans 473 Veteran Poster Team Colleague Featured Poster

I did get it to work eventually, although it wasn't by trying to install it... I installed some other applications and in satisfying their dependancies I satisfied whatever it was Firefox was looking for.

To be honest, I don't see many differences between this FF and the one I had on my other PC,, (1.X), although, maybe its faster... Then again, this PC works much faster than my Windows laptop anyway..

I do use Opera mostly at the moment.