Jump to content
MakeWebGames

First client: Login & Register Request - (Added AJAX requests & Jquery + Javascript)


jcvenom

Recommended Posts

So no graceful degrading then?

So if a user disables javascript, the site is unusable for them?

It's better to keep the links AND pages, for people who refuse to enable it (You'd be surprised at the number that amounts to).

For example; jsFiddle

This loads divs on click IF javascript is enabled. If it's not, it would load index.php and page.php respectively.

Of course, if you are using mod rewrite (Which hasn't been stated), your code may work around it. That's a big if though.

I Suppose, But must sites use JS meaning most sites wouldn't work without Js but I guess your way is good the only downgrade for me personally is the fact you must use external pages

Link to comment
Share on other sites

he has a point. For a project that I'm working on (which has been set to the side for now) I use javascript and jquery a lot, so have had to consider what to do if a user disables it. One of the best solutions is what [MENTION=50378]Guest[/MENTION] has stated, another is redirect them to a mobile site that doesn't use javascript.

Finally the one I find most comical is Facebook's approach:

wB2rdI6.png

Bare in mind I have only done what the client requested so its not in my best interests to go that far and create a mobile site. If requested I would take that into into mind and do something about it but in his case it's not my call i'll let the client worry about that :)

Link to comment
Share on other sites

wB2rdI6.png

Would appear that facebook is a rule to itself! Love how their logic is (Alot like the likes of Apple) do it our way, or just don't do it!

 

I Suppose, But must sites use JS meaning most sites wouldn't work without Js but I guess your way is good the only downgrade for me personally is the fact you must use external pages

Personally, I've never seen a UX Benefit as a "downgrade".

Cover all bases and you won't be called back to the job, but if a few users with js disabled turn up, guess who's getting a message about correcting the issue? Potentially giving yourself corrective work in the future is never a good move, in my opinion

Edit

Bare in mind I have only done what the client requested so its not in my best interests to go that far and create a mobile site. If requested I would take that into into mind and do something about it but in his case it's not my call i'll let the client worry about that :)

The client hired you to build them a fully functional set up, didn't they?

They shouldn't have things to worry about.

No offence, but it's that attitude that kills "return custom"

Edited by Guest
Link to comment
Share on other sites

Would appear that facebook is a rule to itself! Love how their logic is (Alot like the likes of Apple) do it our way, or just don't do it!

 

 

Personally, I've never seen a UX Benefit as a "downgrade".

Cover all bases and you won't be called back to the job, but if a few users with js disabled turn up, guess who's getting a message about correcting the issue? Potentially giving yourself corrective work in the future is never a good move, in my opinion

But shouldn't the client take this into mind before requesting work? Because this is another work i didn't intend to do nor will I do unless requested by the client, personally i agree there's nothing wrong with a UX i would probably use it myself, but in this case I haven't

Link to comment
Share on other sites

I am kind of in the fence with this whole thing myself. I see where both sides are coming from and I will give my input even though no one asked :p

[MENTION=50378]Guest[/MENTION] does make valid points. A lot of people that outsource don't really know these things otherwise they would do it themselves imho. So I think it is kind of the hired helps responsibility to take this stuff into account. You can by all means give them a disclaimer and say "Hey, your peeps will have to have js enabled" which I believe all browsers are by default but there are a few tricky people that like to turn it off for whatever reason. With that you could pinch a few extra bucks from your client and say "But I will make you one that will work for those people".

Now for [MENTION=69823]jcvenom[/MENTION]'s side I am a believer in the fact that the client knows what he wants so he will tell me exactly what that is. Now I do tell them that they have to tell me what they want or it's not going in or being implemented so it is kind of the clients fault as well. But this is why disclaimers are always nice to give to clients :p

Link to comment
Share on other sites

I am kind of in the fence with this whole thing myself. I see where both sides are coming from and I will give my input even though no one asked :p

@Guest does make valid points. A lot of people that outsource don't really know these things otherwise they would do it themselves imho. So I think it is kind of the hired helps responsibility to take this stuff into account. You can by all means give them a disclaimer and say "Hey, your peeps will have to have js enabled" which I believe all browsers are by default but there are a few tricky people that like to turn it off for whatever reason. With that you could pinch a few extra bucks from your client and say "But I will make you one that will work for those people".

Now for @jcvenom's side I am a believer in the fact that the client knows what he wants so he will tell me exactly what that is. Now I do tell them that they have to tell me what they want or it's not going in or being implemented so it is kind of the clients fault as well. But this is why disclaimers are always nice to give to clients :p

So if you asked me to build a website - I can give you one that works for "most" people but not all? Hit me up when you need one :D

Link to comment
Share on other sites

I am kind of in the fence with this whole thing myself. I see where both sides are coming from and I will give my input even though no one asked :p

[MENTION=50378]Guest[/MENTION] does make valid points. A lot of people that outsource don't really know these things otherwise they would do it themselves imho. So I think it is kind of the hired helps responsibility to take this stuff into account. You can by all means give them a disclaimer and say "Hey, your peeps will have to have js enabled" which I believe all browsers are by default but there are a few tricky people that like to turn it off for whatever reason. With that you could pinch a few extra bucks from your client and say "But I will make you one that will work for those people".

Now for [MENTION=69823]jcvenom[/MENTION]'s side I am a believer in the fact that the client knows what he wants so he will tell me exactly what that is. Now I do tell them that they have to tell me what they want or it's not going in or being implemented so it is kind of the clients fault as well. But this is why disclaimers are always nice to give to clients :p

I agree, but for example the image slider needs js to work the only think i could change would be the navigation and the forms but that would cost the client even more money i just do what im told to do

Link to comment
Share on other sites

So if you asked me to build a website - I can give you one that works for "most" people but not all? Hit me up when you need one :D

Now your getting it. But in all seriousness, I myself "try" to accommodate for all users but if I do forget something it would be both our faults for lack of communication but I do keep lots of "everything" a client asks for and exactly how they want it. I use the term Exactly otherwise I don't know what they want or how they want it.

Luckilly im not so js saavy where everything I do is js so I don't run into that problem.

Link to comment
Share on other sites

I do what the client requests, If they then request the site to work without js they'll just have to pay the extra fee for it to work simple

For someone starting off I dont get this attitude. You should be trying to build your reputation up a bit, and throwing in a few free extras that add value to the service your providing. It'll also set you apart slightly. It'll look good when you go to attract more clients.

I agree with points that both [MENTION=50378]Guest[/MENTION] and [MENTION=69823]jcvenom[/MENTION] are making.

I'd be more on the side of Guest though, because I would want to provide my client with something that will accommodate for all users.

But I also hate it when the client doesn't give me enough information but expects me to just know what they want.

 

It uses AJAX requests along with Javascript along with a clever technique of mine to load content onto a page without having to create external pages and use the Jquery load function :P.Nothing on this page refreshes, everything is loaded server side (I added this as a bonus for the client ).

[MENTION=69823]jcvenom[/MENTION] , you tell us in your first post that you added your no external pages technique as a bonus for the client, so what's wrong with giving the client an alternative, just in case. Also, what's wrong with external pages?

As you said your image slider works with javascript I have a really old school workaround for that. it involves using external pages though :P

create an image gallery file then using frames split it into two. the top will be the image in its full size. the bottom frame will have the thumbnails of the images. surround the images with links to a file that displays the full sized image, just target the top frame with the link.

Iframe this image gallery file into your screenshots page.

Link to comment
Share on other sites

For someone starting off I dont get this attitude. You should be trying to build your reputation up a bit, and throwing in a few free extras that add value to the service your providing. It'll also set you apart slightly. It'll look good when you go to attract more clients.

I agree with points that both [MENTION=50378]Guest[/MENTION] and [MENTION=69823]jcvenom[/MENTION] are making.

I'd be more on the side of Guest though, because I would want to provide my client with something that will accommodate for all users.

But I also hate it when the client doesn't give me enough information but expects me to just know what they want.

 

[MENTION=69823]jcvenom[/MENTION] , you tell us in your first post that you added your no external pages technique as a bonus for the client, so what's wrong with giving the client an alternative, just in case. Also, what's wrong with external pages?

As you said your image slider works with javascript I have a really old school workaround for that. it involves using external pages though :P

create an image gallery file then using frames split it into two. the top will be the image in its full size. the bottom frame will have the thumbnails of the images. surround the images with links to a file that displays the full sized image, just target the top frame with the link.

Iframe this image gallery file into your screenshots page.

[MENTION=65530]Coly010[/MENTION] i'm not giving you an attitude and let me stop you there firstly you say and i quote " You should be trying to build your reputation up a bit, and throwing in a few free extras that add value to the service your providing" i did provide a few extra firstly instead of using external pages I loaded everything on the one page i also gave the client Ajax forms, now the client didn't ask for any of this and gave me very little info infact too little info, i'm here to show my work and all of you are going off topic complaining about the use of JavaScript etc. I've seen people post here and no one is complaining about the use of javascript and what i don't get is why i can't post my work here without people arguing, not over the login but over the language thats being used XD. The client didn't give me much details on what he wanted, I was told to build a login and register with a grey background image and I just added features to spice the login up, there's nothing wrong with using Javascript nor is there anything wrong with using divs instead of external pages what matters and the end of the day is making my client happy, you guys can argue all day and try and criticize me, I'll just fire back no problem :), if my client in time decides he wants external pages when users disable js than that's fine, he'll just pay an extra fee i've time, im only 16 and im self thought and open to learning new things, I also like improving my correct work and [MENTION=50378]Guest[/MENTION] i'll take your technique for loading divs in mind next time I make something like this so i'd like to say thank you for that and you too [MENTION=65530]Coly010[/MENTION] i'll also takeyour technique for the slider in mind also but guys im still learning i don't know about you guys but im content with what i've said

Edited by jcvenom
Link to comment
Share on other sites

[MENTION=65530]Coly010[/MENTION] i'm not giving you an attitude and let me stop you there firstly you say and i quote " You should be trying to build your reputation up a bit, and throwing in a few free extras that add value to the service your providing" i did provide a few extra firstly instead of using external pages I loaded everything on the one page i also gave the client Ajax forms, now the client didn't ask for any of this and gave me very little info infact too little info, i'm here to show my work and all of you are going off topic complaining about the use of JavaScript etc. I've seen people post here and no one is complaining about the use of javascript and what i don't get is why i can't post my work here without people arguing, not over the login but over the language thats being used XD. The client didn't give me much details on what he wanted, I was told to build a login and register with a grey background image and I just added features to spice the login up, there's nothing wrong with using Javascript nor is there anything wrong with using divs instead of external pages what matters and the end of the day is making my client happy, you guys can argue all day and try and criticize me, I'll just fire back no problem :), if my client in time decides he wants external pages when users disable js than that's fine, he'll just pay an extra fee i've time, im only 16 and im self thought and open to learning new things, I also like improving my correct work and [MENTION=50378]Guest[/MENTION] i'll take your technique for loading divs in mind next time I make something like this so i'd like to say thank you for that and you too [MENTION=65530]Coly010[/MENTION] i'll also takeyour technique for the slider in mind also but guys im still learning i don't know about you guys but im content with what i've said

Your 16? *Sarcastic clapping* I'm 17. Your self-taught? *sarcastic clapping* same here. Same goes for a lot of other people on here. That's generally how your expected to learn to code. I know that comes across as mean, but you need to see the reality here. There's an 18 year old in England, created an App called Summly (think that's what it was) secured £500k investment (not 100% on that value). Anyway, Yahoo bought his app for something like a million dollars. He was 16 when he published the app, he was self taught in Xcode. (iOS dev language).

Never, ever expect sympathy from fellow developers cause of age. Just a heads up.

My point was that you gave your client a login which doesn't use external pages, everything is done through JavaScript. He didn't ask for this. I know I've told you to through free things in, that's so well and so good, but when he gets complaints from users that can't use the site, he has every right to come back and complain to you that you did something that he didn't ask, which PREVENTS possible users from getting into his site. It's different if your free extra adds to the value, but with the possibility of it preventing people from using the page, then it calls into question if you should add it when yor not asked to.

I recently made a post about getting feedback on this forum in a different thread. A guy was asking for feedback on his layout, we gave him feedback on every single aspect of his screenshot.

Same goes for you. When you post something on here you need to expect that your going to get feedback and criticism on a lot more than your asking for. Get used to it, and appreciate it, it's all valuable, and you'll certainly learn a thing or two.

Link to comment
Share on other sites

Your 16? *Sarcastic clapping* I'm 17. Your self-taught? *sarcastic clapping* same here. Same goes for a lot of other people on here. That's generally how your expected to learn to code. I know that comes across as mean, but you need to see the reality here. There's an 18 year old in England, created an App called Summly (think that's what it was) secured £500k investment (not 100% on that value). Anyway, Yahoo bought his app for something like a million dollars. He was 16 when he published the app, he was self taught in Xcode. (iOS dev language).

Never, ever expect sympathy from fellow developers cause of age. Just a heads up.

My point was that you gave your client a login which doesn't use external pages, everything is done through JavaScript. He didn't ask for this. I know I've told you to through free things in, that's so well and so good, but when he gets complaints from users that can't use the site, he has every right to come back and complain to you that you did something that he didn't ask, which PREVENTS possible users from getting into his site. It's different if your free extra adds to the value, but with the possibility of it preventing people from using the page, then it calls into question if you should add it when yor not asked to.

I recently made a post about getting feedback on this forum in a different thread. A guy was asking for feedback on his layout, we gave him feedback on every single aspect of his screenshot.

Same goes for you. When you post something on here you need to expect that your going to get feedback and criticism on a lot more than your asking for. Get used to it, and appreciate it, it's all valuable, and you'll certainly learn a thing or two.

I agree 100% here, next post will be different now im going to take the criticism and put it in my next request thank you guys i really appreciate this :) anyways the fully complete login can be viewed here suspendedconflict.com

Link to comment
Share on other sites

Just going to note from comments above...

Taking from experience with programming within a semi-corporate environment, the client never knows exactly what they want. Plain and simple. They may not even have the slightest idea in their head as to what it will look like and what it will do.

Usability is one of the key elements to whether or not a project can be considered "successful". There are others, which include meeting the deadline and meeting the given budget.

When building any kind of web application (or web pages in this case), the code should be very readable not only for you, but for the client too. I know that is something that many people will debate on whether or not it is important, but at least in my eyes it clearly is important. If the client can read and understand at least through your comments what the code is doing, there is a much better chance that you will have a return customer, which in terms of freelancing is one of the greatest feelings in the world to have because with a return customer you know that you are doing something right.

I have had some successful and also some failed projects within the semi-corporate environment I work in as well as with the work I do for fun, but usability of the clients' users and knowledge transfer is one of the greatest assets you have as a programmer. Don't be afraid to share your knowledge with others, as who knows: maybe they will be making that £500k investment and will not be afraid to give you a nice chunk of that change just for your great help and advice to get them there. If not even for the money, just knowing that the knowledge base of development can continue to grow and expand into technologies that are not even in existence yet as well as making some great new friends in the process. :)

~G7470

Link to comment
Share on other sites

Looks like a good start, there are a few things that need improving:

1) The typography - You are using 4 fonts (that i can see) try reducing this.

2) There is a scroll bar on the X axis of the textarea

3) The icons for the inputs look out of place, maybe try diffrent icons, look at icomoon.io

As for your javascript you could do something like

<a href="index.html" data-load-page="index">Index</a>
<a href="about.html" data-load-page="about">About</a>
<div data-page="index">Index</div>
<div data-page="About">About</div>

[js]<script>

// This is un tested as im writing this in the quick reply box

$(function () {

$("[data-load-page]").bind("click", function (e) {

e.preventDefault();

$("[data-page]").hide();

$("[data-page="+$(this).attr("data-load-page")+&quot]").show();

});

});

</script>

[/js]

This way you just have to make the html files for when JS is disabled, but if JS is enabled JQuery will load the pages.

Edited by Dayo
Link to comment
Share on other sites

Looks like a good start, there are a few things that need improving:

1) The typography - You are using 4 fonts (that i can see) try reducing this.

2) There is a scroll bar on the X axis of the textarea

3) The icons for the inputs look out of place, maybe try diffrent icons, look at icomoon.io

As for your javascript you could do something like

<a href="index.html" data-load-page="index">Index</a>
<a href="about.html" data-load-page="about">About</a>
<div data-page="index">Index</div>
<div data-page="About">About</div>

[js]<script>

// This is un tested as im writing this in the quick reply box

$(function () {

$("[data-load-page]").bind("click", function (e) {

e.preventDefault();

$("[data-page]").hide();

$("[data-page="+$(this).attr("data-load-page")+&quot]").show();

});

});

</script>

[/js]

This way you just have to make the html files for when JS is disabled, but if JS is enabled JQuery will load the pages.

Thank you for this and taking your time to help me improve.This is a nice way to do it and thank you [MENTION=70485]G7470[/MENTION] for your quote there are some points you've made that have caught my eye thank you

Link to comment
Share on other sites

A couple notes

a) In order to serve the widest audience on the most devices possible, begin with the static and mobile implementations and add the fancy bits for more advanced users. A degraded rich experience will always feel like a degraded experience.

b) DRY your code out - if you notice you've repeated something several times, encapsulate it. For instance, in the JS, I see 20 or better lines like this:

$('.jc_daemon_box_content').css("color","red").text("Username is too long! Max 15chars");

$('.jc_daemon_popup').fadeIn(400);

could far better be served with a small function such as:

function displayError(text) {

$('.jc_daemon_box_content').css("color","red").text(text);

$('.jc_daemon_popup').fadeIn(400);

}

displayError("Username is too long!");

c) Get rid of single use variables - if you're only using a variable twice in a scope, and the first time is to instantiate it, you'd probably be better off just using the function call. The following are identical in operation, but the latter doesn't waste memory or code copying values into single-use placeholders:

var username = $('#rname').val();

$.ajax({ url: 'register_check.ajax.php', type: 'POST', data: 'rname='+escape(username), success: function(z){ if(z=="true"){ } ... });

$.ajax({ url: 'register_check.ajax.php', type: 'POST', data: 'rname='+escape($('#rname').val()), success: function(z){ if(z=="true"){ } ... });

 

d) Make use of the ajax channel to drive those messages - you have a long list of conditions in place in order to interpret the integers and convert them into error messages, where you could simply be passing the message back from the server and doing something like this (in combination with #2):

function displayMessage(text, color) {

$('.jc_daemon_box_content').css("color",color).text(text);

$('.jc_daemon_popup').fadeIn(400);

}

$.ajax({

url: 'register_check.ajax.php',

type: 'POST',

data: 'rname='+escape($('#rname').val()),

success: function(z){ if(z=="true"){ displayMessage("Registered!", "green"); } else { displayMessage(z, "red");

});

Edited by CtrlFreq
Link to comment
Share on other sites

A couple notes

a) In order to serve the widest audience on the most devices possible, begin with the static and mobile implementations and add the fancy bits for more advanced users. A degraded rich experience will always feel like a degraded experience.

b) DRY your code out - if you notice you've repeated something several times, encapsulate it. For instance, in the JS, I see 20 or better lines like this:

$('.jc_daemon_box_content').css("color","red").text("Username is too long! Max 15chars");

$('.jc_daemon_popup').fadeIn(400);

could far better be served with a small function such as:

function displayError(text) {

$('.jc_daemon_box_content').css("color","red").text(text);

$('.jc_daemon_popup').fadeIn(400);

}

displayError("Username is too long!");

c) Get rid of single use variables - if you're only use a variable twice in a scope, and the first time is to instantiate it, you'd probably be better off just using the function call. The following are identical in operation, but the doesn't waste memory or code copying values into single-use placeholders:

var username = $('#rname').val();

$.ajax({ url: 'register_check.ajax.php', type: 'POST', data: 'rname='+escape(username), success: function(z){ if(z=="true"){ } ... });

$.ajax({ url: 'register_check.ajax.php', type: 'POST', data: 'rname='+escape($('#rname').val()), success: function(z){ if(z=="true"){ } ... });

 

d) Make use of the ajax channel to drive those messages - you have a long list of conditions in place in order to interpret the integers and convert them into error messages, where you could simply be passing the message back from the server and doing something like this (in combination with #2):

function displayMessage(text, color) {

$('.jc_daemon_box_content').css("color",color).text(text);

$('.jc_daemon_popup').fadeIn(400);

}

$.ajax({

url: 'register_check.ajax.php',

type: 'POST',

data: 'rname='+escape($('#rname').val()),

success: function(z){ if(z=="true"){ displayMessage("Registered!", "green"); } else { displayMessage(z, "red");

});

Thank you im really busy at times and make life hard for myself thanks :P

Link to comment
Share on other sites

I'm not going to get into the code and slate it off (as I've just returned to development) and quite frankly, I could never be bothered with JavaScript and AJAX requests.

However I definitely do recommend thinking about your pricing! I found Ajax'd PHP Login, User Management & Site Security on CodeCanyon which boasts a lot of features. Price comparison is quite remarkable here, your script is a staggering 430% more expensive (after currency conversion)!

Link to comment
Share on other sites

I'm not going to get into the code and slate it off (as I've just returned to development) and quite frankly, I could never be bothered with JavaScript and AJAX requests.

However I definitely do recommend thinking about your pricing! I found Ajax'd PHP Login, User Management & Site Security on CodeCanyon which boasts a lot of features. Price comparison is quite remarkable here, your script is a staggering 430% more expensive (after currency conversion)!

Well I think th price is just for a single user like his client. If it were released to the general public then I would agree that the price should be lowered.

Lower price * public = more $$$$

Link to comment
Share on other sites

Well I think th price is just for a single user like his client. If it were released to the general public then I would agree that the price should be lowered.

Lower price * public = more $$$$

Thank you, It was and only will be for a single client, likewise if i did release it to the public i'd probably sell for 45 pounds or lower, but i charged what i charged based on the time it took me and the clients requests

Link to comment
Share on other sites

I'm not going to get into the code and slate it off (as I've just returned to development) and quite frankly, I could never be bothered with JavaScript and AJAX requests.

However I definitely do recommend thinking about your pricing! I found Ajax'd PHP Login, User Management & Site Security on CodeCanyon which boasts a lot of features. Price comparison is quite remarkable here, your script is a staggering 430% more expensive (after currency conversion)!

Its selling for 20$ because its released to the public, you don't expect me to sell me services for 20$ or pounds unless It was being released to the general public, so in this particular case i don't agree, plus that login doesn't fit my taste although you could say the same about mine, mine was coded based upon the clients request, and its unique so no one else has it

Link to comment
Share on other sites

Its selling for 20$ because its released to the public, you don't expect me to sell me services for 20$ or pounds unless It was being released to the general public, so in this particular case i don't agree, plus that login doesn't fit my taste although you could say the same about mine, mine was coded based upon the clients request, and its unique so no one else has it

I do understand where you are coming from, however I still don't agree with the price personally for what it is. People can feel free to have their opinion, but for a login and register, I believe its overpriced in my opinion. I wouldn't agree to pay that being a client.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...