Jump to content

jdforsythe

Members
  • Posts

    17
  • Joined

  • Last visited

    Never

Profile Information

  • Gender
    Not Telling

jdforsythe's Achievements

Newbie

Newbie (1/5)

0

Reputation

  1. not to be a spoil sport... but can't one simply navigate to the site of the day previous, use CTRL+F and type in the phrase before the secret word, then enter their site?  it seems website owners who are working hard to get traffic won't tend to spend much time actually [i]reading[/i] the website, but will use the find functionality to hurry the process along. and i agree on the 800x600.  enough people [i]do[/i] use 800x600 resolutions or non-maximized windows (i have 1024x768 but have my taskbar on the right side and another window at about 250px wide on the left side at all times, making my screen pretty much 800x768 in usable size) that you should still cater to these users.  use percentages or constrain your design to under 800 px wide to maximize your potential audience.
  2. 1) you should use css instead of tables and spacer images 2) the "headings" which are "captions" in your tables (paintball, general discussion, electronics, etc.) should stick out more than the column headings (forum, posts, last post, etc.).  as it stands now, the sections stand out seperately from each other, but it isn't the section description that stands out as the top of the section, which makes it difficult to discern your content at a glance.  i suggest making the "captions" much bolder and lessening the boldness (contrast) of the column headings, although still keeping the column headings visually seperate from the content below. 3) also the names of the forums themselves blend into the names of the moderators.  there is no color difference and very little size difference to give them an obvious distinction 4) your table (get rid of, see #1) is 800px wide.  this is going to create a horizontal scroll bar on 800x600 monitors, because the vertical scroll bar will take up some of the 800px width.  you should try to bring it down to something safer, say 750px. 5) this one is little and maybe insignificant, but i think you should design your site for the average user and, in general, what they're already used to.  for instance, your login form has transparent (or black, but it's the same effect) background and a red outline, and your submit (login) button has no outline, underline, or anything except for a marginally distinguishable boldness, to distinguish it as a button rather than plain text, as all the other grey text is.  users are used to solid color (normally white, but solid, contrasting color will do the trick) input boxes and buttons that at least resemble buttons (again, links will do, but it's best imo to use button-looking links at the very least).  you should fill in your input boxes (red would be better than white for your design) and put an outline around the submit button.  also you should consider making the button look more like the input boxes than the form text, as it makes more sense from an associative standpoint in the user's mind (it shows the user that, like the input boxes, "this is something i can interact with in this form" unlike the regular text which is just an explanation of [i]how[/i] to interact with the form). there are my five cents.
  3. the popups certainly should NOT be part of my site.  i abhor them and would never implement them on my site.  can you be more specific about them / can you reproduce them?
  4. ok i understand what you mean about the forms now.  yea, i was aware there isn't any validation of user input as far as that goes.  it's on the way. and the date problem will be solved when i add the calendar to the forms. i hear what you're saying about it not working in real life, but i beg to differ.  the only problem people have when i explain it to them is security, which is pretty much a non-issue because, as i've stated previously, there's no real useful data that could be gathered about you, nothing that could harm you anyway.  once i explain that there are no names, addresses, or account numbers, people seem to think it's a great idea.  we'll just have to wait and see. besides, there are already a couple of sites out there with a worse model and ease-of-use (weird terms for things and hard to navigate) and they seem to be doing okay.  one of them charges for using their service after 30 days and the other is just plain crap, but they have enough users that at a 1.5-2% click thru on ads, i would be able to profit about $5 a month on the site.  all i'm really aiming for is to get back my hosting costs and have another site to put in my portfolio.  making about $50 a year shouldn't be too terribly difficult, once everything is tested and working. again, thanks for your comments.  i will be working on the input validation and getting rid of magic quotes this weekend.
  5. @steviewdr: about webstats4u - agreed.  it's a crappy counting site, and i'm sad i need to use it.  but my host recently upgraded my cpanel install and magically awstats disappeared.  i'm working on correcting that, so i slapped up the crap counter in the meantime. about the mouse hover on name - great point.  i'll change that.  interesting how another perspective brings things to light. no validation on internal forms - i don't get what you're saying here, can you be more specific? no undo as of yet on the cleared property of records, but it's a great thought and will be implemented. magic quotes! aaaaahhh! of course my host would have them on... thanks for bringing this to light.  another thing i never thought to check... no, i don't enforce strong passwords.  i suppose because i HATE having a punctuation mark or number in my password.  i guess i should at least suggest it to registering users, though. agreed on the welcome.  i don't think i'll remove it, but make it more noticeable and plop another copy of it, even more noticeable, above the nav. i don't want to remove the nav for those who don't have an account, because i think it's a good demonstration at a quick glance of what the site is about.  although i will test for logged in status and remove the links for those who aren't.  good point. thanks for your remarks.  this is the only way i can improve the site.
  6. @ober: at present, email addresses are stored as plain text in the database, but in the next revision they will be md5()'d along with the passwords.  apart from that, there is no personal information kept, since there's no need for it. 1. Why track my stuff on your site when I can just login to my bank/credit card website and view the statement? Several reasons.  First, when you first spend money, it doesn't show on your bank/credit card website and therefore you can't see an accurate picture of how much money you have unless you haven't spent anything for a couple days, or if you keep track yourself (which, granted, some people do, but many don't).  Second, you if you have 3 accounts (checking, savings, paypal) and several credit cards, you need to switch between 5 different windows/tabs to see what is going on with all of them at any given time.  Third, none of your bank/credit card sites offer a budgeting tool, which my site will offer in the very near future.  It will help you keep track of your bills, email you reminders of upcoming payments, help you set aside portions from each check for bills, help you track your savings dollars and percentage, and more. 2) There are a lot of programs out there that sit on someone's PC (more secure) and do SO much more than what you're offering Sure.  The security, though, I addressed in my last reply.  There's no real sensitive data here, no account numbers or anything which would really be a threat if someone did gain access to the database.  Another feature in the works is a reason to use my site over software - a mobile version.  A version you can access from any device with an internet connection, anywhere in the world.  Some software has handheld versions to work on Palm or Windows handhelds, but what if all you have is a Motorola?  With my mobile version you'll still be able to view your account balances and budget, but not with software solutions. 3) The biggest problem with all of these programs is that you have to be very dedicated to it.  The reason so many people suck at using these things is because they're not dedicated to it... so they get behind and they get to a point where they're so far behind there's no point in catching back up. Agreed.  I can do nothing personally to motivate anyone to keep track of their money.  But that's not what it's about.  I aim to have a tool which will help the average, non-mathmatical joe keep track of his finances, stop missing bills, and save more money.  His dedication is his own problem.  But hopefully he can gain some useful knowledge and motivation from his peers in the planned forum. I aim to take all the work out of budgeting (other than inputting your expenses, income, and bills, obviously).  People who are bad with numbers have a very difficult time budgeting.  This tool will allow them to keep a strict budget without worrying how numbers interact, all they need to do is input their expenses, income, and bills, and the site will do the rest, down to emailing them reminders when bills are coming due. How many times are you standing in a store, wanting to buy something, but not knowing your account balance or budget allowance for that type of expense?  It happens to me all the time.  I aim to give you the ability to find out within seconds by browsing to my site on your cell phone.
  7. test account email: test@test.com password: password security nightmare? no.  it's safe.  how? no information is kept which can link any data to you apart from your email address. no account numbers are kept on the site, or ever entered. you name your accounts and credit cards whatever you choose, so nothing which is stored or transferred on the site links any data to any real account. if anyone knew your account numbers and your email address, all they could gain from finding a way to steal your data is the knowledge of what you spend your money on (or, more accurately, what you [i]describe[/i] your expenses as, because when you enter them you can use whatever description you want); and if someone has your email address and your account numbers, you have bigger problems.
  8. 2 days ago i launched the beta version of my new site, watch my spending. [url=http://www.watchmyspending.com]www.watchmyspending.com[/url] more features coming soon, after some initial beta testing is complete. please let me know what you think. thanks! jeremy
  9. try the example php code in reply #4 if there are multiple records for the same club-date: club1 | 08-24-2006 | john club1 | 08-24-2006 | james club1 | 08-25-2006 | jim it will return: club1 | 08-24-2006 club1 | 08-25-2006 the first php code makes a list of links so that if you click on the club-date it sends you to the second php code. the second set of code gets all names from the table which match the club and date you clicked on. i'm pretty sure this is what you're asking.  here's a complete version of the code so you can test it and see if it's what you need: first_query.php: [code] <html><body> <?php mysql_connect($DB_HOST, $DB_LOGIN, $DB_PASSWORD) or die('Error :' . mysql_error()); mysql_select_db($DB_NAME) or die('Error :' . mysql_error()); $q = "SELECT DISTINCT club,date FROM list ORDER BY club ASC, date ASC"; $p = mysql_query($q) or die('Error: ' . mysql_error()); while ($result = mysql_fetch_row($p)) {   $club = $result[0];   $date = $result[1];   echo "<a href=\"second_query.php?club=$club&amp;date=$date\">$club on $date</a><br />"; } ?> </body></html> [/code] and second_query.php: [code] <html><body> <?php mysql_connect($DB_HOST, $DB_LOGIN, $DB_PASSWORD) or die('Error :' . mysql_error()); mysql_select_db($DB_NAME) or die('Error :' . mysql_error()); $club = $_GET['club']; $date = $_GET['date']; $q = "SELECT name FROM list WHERE (club = '$club') AND (date = '$date')"; $p = mysql_query($q) or die('Error: ' . mysql_error()); echo "<table>"; echo "<tr><td>club</td><td>date</td><td>name</td></tr>"; while ($result = mysql_fetch_row($p)) {   echo "<tr><td>$club</td><td>$date</td><td>$result[0]</td></tr>"; } echo "</table>"; ?> [/code] just replace $DB_HOST, $DB_LOGIN, $DB_PASSWORD, and $DB_NAME with the values you need and try to run the script.  i think this will do what you're looking to do, or set you on the right track. jeremy
  10. oops!  thanks @ hitman for correcting that! he's right.  if you use multiple databases you'd want to omit the select_db completely from your access_db() function and just select the database wherever you need to switch inside your scripts.
  11. or are you going for something like this: [table] [tr] [td]club[/td][td]date[/td][td]name[/td] [/tr] [tr] [td]club 1[/td][td]08-24-2006[/td][td]john[/td] [/tr] [tr] [td][/td][td][/td][td]james[/td] [/tr] [tr] [td][/td][/tr][tr][td]08-25-2006[/td][td]anne[/td] [/tr] [tr] [td][/td][td][/td][td]andrea[/td] [/tr] [tr] [td]club 1[/td][td]08-24-2006[/td][td]john[/td] [/tr] [/table] ?
  12. i was under the impression that you only wanted the club names and unique dates, not the people's names. let's say you have the data in "list" like this: club1 | 08-24-2006 | john club1 | 08-24-2006 | jeb club1 | 08-25-2006 | jane club1 | 08-25-2006 | jimbo club2 | 08-24-2006 | amy club2 | 08-24-2006 | anne club2 | 08-25-2006 | andrea club2 | 08-25-2006 | andy if you: [code]SELECT DISTINCT club,date FROM list ORDER BY club ASC, date ASC[/code] (take out the group by) you will get this: club1 | 08-24-2006 club1 | 08-25-2006 club2 | 08-24-2006 club2 | 08-25-2006 DISTINCT selects only unique club-date combinations.  if you add the name field in, then it will only exclude entries where the club, date, and name are all the same.  so in the example table above it will return ALL entries since none of them are exact duplicates. i'm trying to figure out exactly what you want this to do. okay i think i might understand.  something like this(?): [code] <?php $q = "SELECT DISTINCT club,date FROM list ORDER BY club ASC, date ASC"; $p = mysql_query($q) or die('Error: ' . mysql_error()); while ($result = mysql_fetch_row($p)) {   $club = $result[0];   $date = $result[1];   echo "<a href=\"second_query.php?club=$club&amp;date=$date\">$club on $date</a><br />"; } ?> [/code] and the second_query.php like this: [code] <?php $club = $_GET['club']; $date = $_GET['date']; $q = "SELECT name FROM list WHERE (club = '$club') AND (date = '$date')"; ... ?> [/code] if you see what i'm getting at.
  13. what i do is this: create an external functions.php file (kind of like your config file you talk about) in that i create a function (which i now just copy+paste for each new project and modify the user/password/etc) called access_db().  here's an example: [code] function connect_db() { $DB_HOST = "localhost"; // mySQL local database host address $DB_LOGIN = "dbuser"; // database username $DB_PASSWORD = "dbpass"; // database password $DB_NAME = "dbname"; // database name /* connect to mysql server */ mysql_connect($DB_HOST, $DB_LOGIN, $DB_PASSWORD) OR die('Error: ' . mysql_error()); /* select database */ mysql_select_db($DB_NAME) OR die('Error: ' . mysql_error()); } [/code] in that function connect to the server and select the database. then in each of your pages: [code] include_once('functions.php'); access_db(); [/code] if your project uses more than one database on the same server, you could rewrite the access_db() function like so: [code] function connect_db($DB_NAME) { $DB_HOST = "localhost"; // mySQL local database host address $DB_LOGIN = "dbuser"; // database username $DB_PASSWORD = "dbpass"; // database password /* connect to mysql server */ mysql_connect($DB_HOST, $DB_LOGIN, $DB_PASSWORD) OR die('Error: ' . mysql_error()); /* select database */ mysql_select_db($DB_NAME) OR die('Error: ' . mysql_error()); } [/code] and when you need the database in your scripts, use: [code] access_db("dbname"); [/code] note that if you use multiple dbs you'll need to call access_db for each one prior to querying. i find it easier to use external functions for things like this because otherwise your scripts look cluttered when you're going back to look at them, which makes them harder to decipher. there really is no difference between the two ways except using external functions makes your code easier to read and you can reuse the same functions.php for multiple projects with very little modification.  it also makes it easier if you have many different php files on a project to just type access_db(); instead of writing the code every time (and if you change the name of the database, username, etc you only have to change it in one place!) any functions that are used over and over again, in the same site or multiple sites, should be put in seperate php files.  that's just my opinion, though.
  14. try using DISTINCT like so: [code]SELECT DISTINCT club, date FROM list GROUP BY club ORDER BY date ASC[/code] hope that helps! jeremy EDIT: i just reread your question.  make that: [code]SELECT DISTINCT club, date FROM list GROUP BY club ORDER BY club ASC, date ASC[/code]
  15. i'll elaborate a bit. when you first load the site (index.php) it notices that no cookie is set, so you are not logged in.  it sets a cookie for user = "guest" and curr_page = "home". if the user = "guest" then it displays a login form in the header, if the user is not "guest" then it displays a welcome message and a logout link instead of the form. the curr_page is used for two reasons.  it helps set the class on the navigation menu so that the current page's menu item is colored differently (and also omits the link).  it also will determine which content to show in the content div. here are some snippets of the code. navigation: [code] <div id="sidebar">   <ul>        <?php         if ($_COOKIE['curr_page'] == "home") {             ?>             <li class="inactive">Home</li>             <?php } else {             ?>             <li><a href="/home">Home</a></li>             <?php } ... [/code] and the content code: [code] <div id="content"> <?php       $content_html_file = $_COOKIE['curr_page'] . ".html";       include $content_html_file; ?> </div> [/code] if you notice in the navigation, i link to a subfolder.  this is redirected with .htaccess / mod_rewrite back to index.php?curr_page=PAGENAME index.php tests in the beginning whether a GET value is set for curr_page and rewrites the cookie accordingly (but only if $_COOKIE['user'] != "guest", so users who aren't logged in cannot access the various parts of the site which are intended for members). i know i could have used a session, which i've done for other sites, but i don't have access to the php configuration on my host and it's set to not allow session id's in the url (which is good, anyway) so sessions get stored in cookies or not at all.  therefore i decided to just use cookies in the first place which expire when the browser closes. i hope this explains it better. thanks! p.s. - i store the userkey (unique auto_increment unsigned int) in the cookie as well, because i use it to identify the users' data in all the other tables instead of using their username.  this saves me from querying for the userkey each time i want to look up the user's data.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.