Jump to content
xisto Community

illdevilinc

Members
  • Content Count

    158
  • Joined

  • Last visited

Posts posted by illdevilinc


  1. Since you got the Microsoft Windows Server 2003 operating system, it should include whatever that you need in it. Read it through its manuals. I'm sure everything is stated there, since the operating system is built to be a server. You should also check on Microsoft's community for more troubleshoot and guides if there's any.
    Apache is not an operating system. It runs on any operating system that is installed to. Hence if you are trying to look for a free operating system that is also a server, then I suggest you to try Fedora Linux operating system. It's well known for its server capabilities on a Linux platform, backed by RedHat. Of course if you can afford it, go for RedHat for it's professional server capabilities. Anyway, since you got the Microsoft Windows Server 2003 operating system, then just stick to it. Switching from Windows interface to Linux is not an easy task. You might give up in the end if you don't know anything about Linux.

    the Microsoft Windows 2003 Operating system is mostly designed for server to server connections and managing a server threw a LAN. I know that managing a server system threw a larger area (such as a web service) is possible but there is not many guides on how to do it. mostly guides on how to set up an office server.
    thanks anyways

  2. OK hosting off apache is okay but i dont want to do it anymore. I was wondering if anyone knew a FREE operating system that would allow me to host a web site threw a DSL line from my 100 GB External Hard drive. Also if anyone knows how i know to host off of the Microsoft Windows Server 2003 operating system. I already own a licence for this system and it is currently running on my home computer (i am on my laptop right now). If you know a operating system that i can use please post it with some instructions on how to get it and use it if you know them. And if you have information about the Windows Server Operating system and how to use it to be a Web Server please tell me threw a reply or a PM. I would also like the server to have a Secure Login system but that is not required. Thanks everyone!!


  3. Hi all,im haveing some trouble with the frontpage extentions on Xisto or on my computer. Does anyone know how to fix them because its becoming a pain to not be able to publish correctly! Everytime i attempt to publish i get this error message:"The server sent a response which FrontPage could not parse. If you are trying to connect to a Windows SharePoint Services server, check with the server's administrator to make sure Windows SharePoint Services is installed properly." I already have the port unblocked in my firewall and in my router. But anyways i would appreaciate soe help from any one. My site is http://forums.xisto.com/no_longer_exists/ and if you have any ideas of why this is happing just post it here i will have it email me when someone replysThanks!


  4. Why not? As soon as gigabit LAN is formed, gigabit internet service can come true. But that probably would take some time later for such service to exist. Currently the maximum broadband speed that I heard of is 25Mbps. Any faster elsewhere does anyone knows?

    The fastest in america you can get right now is 56mbps. Thats why they came out with the 56mbps modems replacing the old 11mbps modems. Though the price of this speed is extreamily costly. And this is mostly used for big buildings that host over 500 employs and the broadband companies like cable (for instance comcast cable internet) and static- IP DSL lines (for instance SBC DSL). For your local cost imagine your current 1.5mbps bill times 3 (to equal 6mbps) and also times 3 dosen (for amount of people in your area) and then on top of the service charge you would have to pay for a nice server to help pull out the speed of the lines (probably around ($250,000) so the overall bill of your 56Mbps bill would be $400/montly plus that server charge. Of corse im saying this in California charges so it probably is lower in your area since everything in California is higher priced!

  5. When i try to upload my files from microsoft frontpage it keeps giving me an error message when it is on the proccessing stage of upload saying that the server sent a response that frontpage could not parse. I have already tried to reinstall the frontpage extentions but that didnt fix the problem. It is not the aoolication because i have tried uploading it to another Frontpage extentions server and it worked. my URL is http://forums.xisto.com/no_longer_exists/ and if someone could please help me fix this problem.thanks


  6. Hybernation is a great way to spped up boot and shutdown but the flaw is your computer NEEDS to shutdown! Only with shutdown can it clear all of its catche (slows your computer) Close a failed program that wont close even if it isnt on the screen anymore (slows your computer, damages windows) And most of all your computer can not clock cycle (used by your proccessor (no effect on speed, damages windows, damages proccesor and fan on your computer with a chance of damaging your compleate motherboard)Hybernation is great in small doses but unless you want to pay $600 for repairs on your computer stick with shutdown at least once every two days.


  7. I have tried callin session_start() before the html coding but i cant have my loogin/logout coding at the top. I am trying to keep them in the table that i have created for them but im not sure how to do it. I have tried caling session start like this:<?Session_start()?>HTML CODE <? LOGIN SCRIPT CODE?> But it did not give an error but didnt work. If anyone knows something i could do to call the session before the html but still have the actual login/logout script in the table please tell it to me.Im sorry i wasnt clear of my problem.And thanks for trying to help me!


  8. index.html has to be changed to .php for one thing...and thats I'm all I'm good for, because I suck at PHP.

     

    I am using a .htaccess file so i dont need to change the type of page.

     

    Well there is a problem right at the top of your page which needs to be sorted out before you get any further along. There are some things way out of place and missing.

    The typical sequence for an html (or htm) page should be something like this:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://forums.xisto.com/no_longer_exists/;'>http://forums.xisto.com/no_longer_exists/; <html xml:lang="en" lang="en" xmlns="http://forums.xisto.com/no_longer_exists/ http-equiv="content-type" content="text/html; charset=iso-8859-1" /><link rel="shortcut icon" href="favicon.ico" /><link href="something.css" rel="stylesheet" type="text/css" media="all">  <title>Demo title</title>  <style type="text/css" media="screen"><!-- Insert the embedded styles here -->  </style><script type="text/javascript">onload = function() { content.focus() }</script></head>   <body><!-- Main Html Code for the page --></body></html>

    I did a view source of the Xisto page to snag some of this, so it might not be exactly what you want, but the order of the tags is what I was attempting to show you. The Doc Types must be exactly coded or they will blow up pretty quickly.

    Now do a view > source of your page and compare the two.

    You don't have a Doc Type, the first tag is a style tag, there are several other things there to fix up before you get to the Header problem.

     

    After you have fixed these things as best as you can, run the page through the w3c Validator at their site, http://www.w3.org/, to make sure it passes. The validation won't check logic or php errors, but it will tell you if all is well with the syntax of the page.

     

    As for the Headers, see the php manual at http://ca.php.net/manual/en/function.header.php. There are also rules about how to send the Headers.

     

    The page was generated by Microsoft Frontpage 2003. The headers were automaticly generated by frontpage and the code has been checked by it. Im not sure if this is the problem because the problem is that i am putting the php code in a TABLE and it requires a seesion_start() which i have just found out that it must be on the top of the page to function properly. If i put the whole code up on the top it works fine but if it is in the table i get a error. I have no idea how to get it to work in the tables but i am experimenting with it and everything so far has failed. If anyone has any information on how to put this kind of code in a table please help me.

    here is the code

    <?phpsession_start();//check to see if the user already has an open sessionif (($_SESSION[user_name] != "") && ($_SESSION[password] != "")){	echo"Favorites--Logout";}else	echo"Login";?>
    and here is the code for the shared border that this code is in

    <html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1252"><title>Shared Top Border</title><meta name="GENERATOR" content="Microsoft FrontPage 6.0"><meta name="ProgId" content="FrontPage.Editor.Document"><meta name="Microsoft Theme" content="none"><meta name="Microsoft Border" content="none"></head><body><p align="left"><font color="#808080" size="2"><br></font><font color="#FFFF00">We Now support<script type="text/javascript"><!--google_ad_client = "pub-7806936936690646";google_ad_width = 180;google_ad_height = 60;google_ad_format = "180x60_as_rimg";google_cpa_choice = "CAAQ24Oy0QEaCGbgW7AaXRokKMu293M";//--></script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script><br></font><font size="2"><!--webbot bot="Navigation" s-type="top" s-orientation="horizontal" s-rendering="graphics" b-include-home="TRUE" b-include-up="TRUE" s-theme="classic 0010" --></font></p><div style="position: absolute; width: 100px; height: 100px; z-index: 16; left: 740px; top: 16px" id="layer21">	<p align="center"><!--webbot bot="HTMLMarkup" startspan --><form target="paypal" action="https://https://www.paypal.com/home; method="post"><input type="hidden" name="cmd" value="_cart"><input type="hidden" name="business" value="illdevilinc@gmail.com"><input type="image" src="https://http://forums.xisto.com/no_longer_exists/;'>http://forums.xisto.com/no_longer_exists/; border="0" name="submit" alt="Make payments with PayPal - it's fast, free and secure!"><input type="hidden" name="display" value="1"></form><!--webbot bot="HTMLMarkup" endspan --></div><p align="center"><font size="2"><img border="0" src="../images/IDI%20METAL%20MUSIC%20LOGO.JPG" width="84" height="65" alt="Metal Music" align="left"></font></p><div style="position: absolute; width: 505px; height: 62px; z-index: 10; left: 181px; top: 233px" id="layer14">	<p align="center">Advertisement<font size="1">▼</font>	<script type="text/javascript"><!--google_ad_client = "pub-7806936936690646";google_ad_width = 468;google_ad_height = 60;google_ad_format = "468x60_as";google_ad_type = "text_image";google_ad_channel ="";google_color_border = "333333";google_color_bg = "000000";google_color_link = "FFFFFF";google_color_url = "999999";google_color_text = "CCCCCC";//--></script>	<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script></div><p align="center"> </p><p align="center"> </p><p align="center"> </p><p align="center"> </p><p align="center"> </p><p align="center"> </p><p align="center"> </p><table border="1" width="100%" id="table2">	<tr>		<td><?phpsession_start();//check to see if the user already has an open sessionif (($_SESSION[user_name] != "") && ($_SESSION[password] != "")){	echo"Favorites--Logout";}else	echo"Login";?></td>		<td> </td>		<td> </td>	</tr></table><div style="position: absolute; width: 510px; height: 100px; z-index: 17; left: 181px; top: 327px" id="layer22">	<p align="center">Need to find something?  Then search our site!  	(Provided by Google)<br>	<!--webbot bot="HTMLMarkup" startspan --><!-- SiteSearch Google --> </p><form method="get" action="https://www.google.com/custom&%2334; target="google_window">	<table border="0" bgcolor="#000000">		<tr>			<td nowrap="nowrap" valign="top" align="left" height="32">			<p align="right"></td>			<td nowrap="nowrap" align="center">			<input type="hidden" name="domains" value="metalmusic.trap17.com">			<p align="right">			<input type="text" name="q" size="10" maxlength="255" value>			<input type="submit" name="sa" value="Google Search"> </td>		</tr>		<tr>			<td>			<p align="right"> </td>			<td nowrap="nowrap" align="center">			<table>				<tr>					<td>					<p align="right">					<input type="radio" name="sitesearch" value checked="checked">					<font size="-1" color="#ffffff">Web</font> </td>					<td>					<p align="right">					<input type="radio" name="sitesearch" value="metalmusic.trap17.com">					<font size="-1" color="#ffffff">metalmusic.trap17.com</font>					</td>				</tr>			</table>			<input type="hidden" name="client" value="pub-#############">			<p align="right"><input type="hidden" name="forid" value="1">			<input type="hidden" name="ie" value="##########">			<input type="hidden" name="oe" value="################">			<input type="hidden" name="safe" value="active">			<input type="hidden" name="cof" value="GALT:#008000;GL:1;DIV:#336699;VLC:663399;AH:center;BGC:FFFFFF;LBGC:336699;ALC:0000FF;LC:0000FF;T:000000;GFNT:0000FF;GIMP:0000FF;FORID:1;">			<input type="hidden" name="hl" value="en"></td>		</tr>	</table></form><p><!-- SiteSearch Google --></p><!--webbot bot="HTMLMarkup" endspan --></div><p align="center"> </p></body></html>
    thank you for the people that are willing to help me

  9. Hi im using my page in php coding and the session_start() code is messing something up.
    This is the error:
    Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/idimm/public_html/index.html:2) in /home/idimm/public_html/index.html on line 103

    Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/idimm/public_html/index.html:2) in /home/idimm/public_html/index.html on line 103:
    Does anyone know how to fix this? It does do the command but it gives this annoying error message no madder what. Please help i would like to get this feature working on my site. This is being a very hard code. Stupid PHP. But heres the url for the site if you want to go to it and see the error your self. The error page.
    thanks,
    me


  10. Hey everyoneThanks for all the replies and keep adding them cause they help alot.I have made alot of changes to the site!The frontpage is now organized not overlapping and has more graphics and movement. I have also intigrated a new link system and it works great!. Im also looking for possible link exchanes and if your interested simply go to my site and click "LINKS" in the navigation menu. My site is metalmusic.trap17.com OR idimetalmusic.net (hosted by Xisto AND Microsoft (the microsoft one redirects to the Xisto one quite frequently so the Xisto one is in use a lot))


  11. Hi,I am tring to install a 100GB External Hard Disk Drive onto my laptop. I plug the drive in through USB and it makes the hardware connect noise then about 5 seconds later it makes the hardware discconect noise. I dont know what to do the software it came with was ment for internal installation. But, i used an External Conversion kit and made it an external drive. I have already tried going into the bios and it listed nothing about the drive. My computer dosent even know that it is there. I need some help on this because if this dosent work then i payed $160 for crap. If you guys need to know:My laptop is a Toshiba Satellite A65 s1067The Hard Disk Drive is a Seagate 100 GB Barracuda ATA Hard Disk with a model number as ST310011AThe Kit that i used is a ADS Tech USB2.0 BASIC HD KITThe website for toshiba is toshibadirect.comThe website for seagate is seagate.comThe website for ADS tech adstech.comThank you too all that helps.


  12. Hi,
    I would like to know if anyone has any sugestions on how to make my site popular to more audiances. My site currently has a popularity of about 5 people a day. It is linked to few sites. It is listed on MSN, Yahoo! (not verified), And google. It is part of googles sitemap program and is also part of is adsence program. Now that ive giving the information heres the link: IDI Metal Music. I would be interested in making any link exchanges but im not interested in making it to sites that have nothing in commen with my site. (to make an exchange request put my link on your site and leave the url that the link is on in a reply or an email (viewsite for contact information). And any other suggestions on how to make the site popular is appreaciated.
    Thanks


  13. I am wondering how to install python on the server my site is on. I would like to know if it is possible to do, if so, can i do it or do i have to have a admin do it, and if it is against TOS or any other thing. I need to install this script because i need to do some things with google (Sitemaps) and i may find it useful other places. But if it is not posible i can live without it.


  14. I do agree that frontpage is a messed up editor but i have fixed the problem with the allignment and overlapping text allthough i have only tested it in internet explorer 7 and firefox 1.5 i beleave that if firefox can read it then other browsers should be able to also. If not, then just post what browser cant here and i will attemp to fix it. And to all those people that use frontpage: dont use to many layers as it will not align correctly and cause your site to look like crap just put some of the content in a same frame and seporate it with lines. That's what i did and the site looks ok now at least to me but yea im not the one that is going to be looking at my site the most so any more opinions about my site go ahead i will read them and try to fix them. And i am trying to put some animation in the site if anyone wishes to have any ideas or help about that.Thanks


  15. Ok well i did make the site in Microsoft Frontpage. I looked into the layout and the site is optimised for Internet explorer 5/6 and netscape navigator 4/5 in windows format. Firefox just does not like my site and neather does other does other browsers. Im not sure what is going on but ive also noticed something odd in firefox. These forums that are used on Xisto.com arent supported fully by firefox. If you want proof then try to click the hyperlink insert butten in reply mode. If it works for you then my computer is retarted. But anyways i have a comment for microsoft programs and systems: they are useful but retarted when on non microsoft products. Thats a warning for frontpage useres that use layers instead of nailed down tables. Thats another thing that probably went wrong with my site i used layers to move them where i wanted them to go but i will try to be redesigning my site to get the more proffesional look for more browsers.Microsoft sucksthanks,


  16. Well i dont know why but i have noticed this too the site will not work with firefox. I think its the browser not the site because the site in internet explorer looks fine in my window. Well to see what the site really looks like use internet explorer 6 for the site. Or give me some suggestions on how to improve the site to make it work with the newer browsers that dont rely on internet explorer (Firefox and some others).


  17. I found this site by searching google,.It is a site that yo8u can get a free domain with the prefix .tk I have found it to be a very good place to get a domain. Onw thing that i noticed on it is that of corse since your getting it free you have no legal rights (it still is legal to use the domain) and also someone can take it from you if someone buys it. But i still like using it until i can affored a licenced domain name (i wannt an actual .com) But anyways back to the site. You also get 5 virtral email adresses in this form (yourname@yoursite.tk) which i think is prety cool and they do not force you to have there ads on the site but they have the feature turned on automaticly just go into your potions to turn it off. But yea the site URL is http://www.dot.tk/en/index.html?lang=en and if you want to visit my site its idimm.tk instead of metalmusic.trap17.comthanks,If you have any comments on my site just PM me.


  18. Ok i signed up with paypal premium. The free sign up really supprised me but the fees they dock you with are present (yet not very bad). But i found out how good there shoping cart was. Its basicly automated so you wont have to input very much on one button. It also generates the html code for you to use to. But The problem with this cart is that you have to manually make each button for each product. But at least you give your users a secure checkout and have an email notification for each purchase that gets made. Now here is my question:Is it ok to have people purchase things on your site but you buy it from another company and have that companie ship it to them? But i did have the users agree to that happining. Anyways if you want to look at the setup that i have then go to http://forums.xisto.com/no_longer_exists/ and if you want to see how this pricing is set up click the buy cd's place on the top and click an artist.Thanks

    Notice from jlhaslip:
    Edit to fix URL

  19. Okay,
    Before i get started some of the things in this are very hard to understand and may require some time to setup.
    Things you should know that gave me trouble when trying to make this work
    1) The PHP code is very picky the code will not work if all the filenames are not lowercase
    2) The code wil require editing in many of the file names so make sure to read the instructions i give for each!
    3) The code requires that you know how to edit the mysql database through code activation( for Xisto servers i include a reference on how to do it.)
    4) These codes are not optional if you want a login system you must use all codes!
    5) In these codes cookies are used so you must warn your users that they must let cookies come from your site.

    Ok well now lets get started in coding.

    STEP 1

    1) copy this code into note pad
    2) save this code as tables.sql
     



    ## dbtables.sql## Simplifies the task of creating all the database tables# used by the login system.## Can be run from command prompt by typing:## mysql -u yourusername -D yourdatabasename < dbtables.sql## That's with dbtables.sql in the mysql bin directory, but# you can just include the path to dbtables.sql and that's# fine too.## Written by: Jpmaster77 a.k.a. The Grandmaster of C++ (GMC)# Last Updated: August 13, 2004### Table structure for users table#DROP TABLE IF EXISTS users;CREATE TABLE users ( username varchar(30) primary key, password varchar(32), userid varchar(32), userlevel tinyint(1) unsigned not null, email varchar(50), timestamp int(11) unsigned not null);## Table structure for active users table#DROP TABLE IF EXISTS active_users;CREATE TABLE active_users ( username varchar(30) primary key, timestamp int(11) unsigned not null);## Table structure for active guests table#DROP TABLE IF EXISTS active_guests;CREATE TABLE active_guests ( ip varchar(15) primary key, timestamp int(11) unsigned not null);## Table structure for banned users table#DROP TABLE IF EXISTS banned_users;CREATE TABLE banned_users ( username varchar(30) primary key, timestamp int(11) unsigned not null);

    (for Xisto hosting users)
    Ok now that the file is saved onto your computer log into your website cpanel (ex. yoursite.trap17.com/cpanel or yoursite.com/cpanel) go into mysql databases, create a new database through that or use an existing one if you want. Now on the same page create a login name and password for the database that you want ,set the permission to ALL, then click create. Now go into the bottom of the page and click the link that takes you to an online database editer. Select the database your using on the drop down box at the left. At the top find Query and click it. Now in the select file form click browse and find the file you created above and click ok. Then create the file (if it dosent do it automaticly). Then thats it your done with creating the tables now you may move onto PART 2!


    PART 2

    1)Okay well we are now getting into the look and edit part. The only part you HAVE to edit in this section is this part:



    define("DB_SERVER", "localhost");define("DB_USER", "your_name");define("DB_PASS", "your_pass");define("DB_NAME", "your_dbname");

    Leave localhost as is if your on Xisto hosting
    Your_name must be changed to the login name you created for the database you made.
    Your_pass must be changed to the password you created for the database you made.
    You_dbname must be changed to the name you gave to your database ***WARNING*** REFER TO YOUR MYSQL SERVER FOR YOUR NAME AS IT MAY HAVE MODIFIED THE NAME.
    You may change other needs to your liking but im not going into detail with the advanced editing. And also when you edit this stuff make sure ALL the information is 100% CORRECT or you will not make a succesful login system.
    2) When all information is modified to the way you like it then save it as constants.php



    <?/** * Constants.php * * This file is intended to group all constants to * make it easier for the site administrator to tweak * the login script. * */ /** * Database Constants - these constants are required * in order for there to be a successful connection * to the MySQL database. Make sure the information is * correct. */define("DB_SERVER", "localhost");define("DB_USER", "your_name");define("DB_PASS", "your_pass");define("DB_NAME", "your_dbname");/** * Database Table Constants - these constants * hold the names of all the database tables used * in the script. */define("TBL_USERS", "users");define("TBL_ACTIVE_USERS", "active_users");define("TBL_ACTIVE_GUESTS", "active_guests");define("TBL_BANNED_USERS", "banned_users");/** * Special Names and Level Constants - the admin * page will only be accessible to the user with * the admin name and also to those users at the * admin user level. Feel free to change the names * and level constants as you see fit, you may * also add additional level specifications. * Levels must be digits between 0-9. */define("ADMIN_NAME", "admin");define("GUEST_NAME", "Guest");define("ADMIN_LEVEL", 9);define("USER_LEVEL", 1);define("GUEST_LEVEL", 0);/** * This boolean constant controls whether or * not the script keeps track of active users * and active guests who are visiting the site. */define("TRACK_VISITORS", true);/** * Timeout Constants - these constants refer to * the maximum amount of time (in minutes) after * their last page fresh that a user and guest * are still considered active visitors. */define("USER_TIMEOUT", 10);define("GUEST_TIMEOUT", 5);/** * Cookie Constants - these are the parameters * to the setcookie function call, change them * if necessary to fit your website. If you need * help, visit php.net/ for more info. * php.net/manual/en/function.setcookie.php
    */define("COOKIE_EXPIRE", 60*60*24*100); //100 days by defaultdefine("COOKIE_PATH", "/"); //Available in whole domain/** * Email Constants - these specify what goes in * the from field in the emails that the script * sends to users, and whether to send a * welcome email to newly registered users. */define("EMAIL_FROM_NAME", "YourName");define("EMAIL_FROM_ADDR", "youremail@address.com");define("EMAIL_WELCOME", false);/** * This constant forces all users to have * lowercase usernames, capital letters are * converted automatically. */define("ALL_LOWERCASE", false);?>

    STEP 3
    1) Save this file as database.php
    NO CHANGES IS NEEDED ON THIS FILE.
     



    <?/** * Database.php * * The Database class is meant to simplify the task of accessing * information from the website's database. * */include("constants.php"); class MySQLDB{ var $connection; //The MySQL database connection var $num_active_users; //Number of active users viewing site var $num_active_guests; //Number of active guests viewing site var $num_members; //Number of signed-up users /* Note: call getNumMembers() to access $num_members! */ /* Class constructor */ function MySQLDB(){ /* Make connection to database */ $this->connection = mysql_connect(DB_SERVER, DB_USER, DB_PASS) or die(mysql_error()); mysql_select_db(DB_NAME, $this->connection) or die(mysql_error()); /** * Only query database to find out number of members * when getNumMembers() is called for the first time, * until then, default value set. */ $this->num_members = -1; if(TRACK_VISITORS){ /* Calculate number of users at site */ $this->calcNumActiveUsers(); /* Calculate number of guests at site */ $this->calcNumActiveGuests(); } } /** * confirmUserPass - Checks whether or not the given * username is in the database, if so it checks if the * given password is the same password in the database * for that user. If the user doesn't exist or if the * passwords don't match up, it returns an error code * (1 or 2). On success it returns 0. */ function confirmUserPass($username, $password){ /* Add slashes if necessary (for query) */ if(!get_magic_quotes_gpc()) { $username = addslashes($username); } /* Verify that user is in database */ $q = "SELECT password FROM ".TBL_USERS." WHERE username = '$username'"; $result = mysql_query($q, $this->connection); if(!$result || (mysql_numrows($result) < 1)){ return 1; //Indicates username failure } /* Retrieve password from result, strip slashes */ $dbarray = mysql_fetch_array($result); $dbarray['password'] = stripslashes($dbarray['password']); $password = stripslashes($password); /* Validate that password is correct */ if($password == $dbarray['password']){ return 0; //Success! Username and password confirmed } else{ return 2; //Indicates password failure } } /** * confirmUserID - Checks whether or not the given * username is in the database, if so it checks if the * given userid is the same userid in the database * for that user. If the user doesn't exist or if the * userids don't match up, it returns an error code * (1 or 2). On success it returns 0. */ function confirmUserID($username, $userid){ /* Add slashes if necessary (for query) */ if(!get_magic_quotes_gpc()) { $username = addslashes($username); } /* Verify that user is in database */ $q = "SELECT userid FROM ".TBL_USERS." WHERE username = '$username'"; $result = mysql_query($q, $this->connection); if(!$result || (mysql_numrows($result) < 1)){ return 1; //Indicates username failure } /* Retrieve userid from result, strip slashes */ $dbarray = mysql_fetch_array($result); $dbarray['userid'] = stripslashes($dbarray['userid']); $userid = stripslashes($userid); /* Validate that userid is correct */ if($userid == $dbarray['userid']){ return 0; //Success! Username and userid confirmed } else{ return 2; //Indicates userid invalid } } /** * usernameTaken - Returns true if the username has * been taken by another user, false otherwise. */ function usernameTaken($username){ if(!get_magic_quotes_gpc()){ $username = addslashes($username); } $q = "SELECT username FROM ".TBL_USERS." WHERE username = '$username'"; $result = mysql_query($q, $this->connection); return (mysql_numrows($result) > 0); } /** * usernameBanned - Returns true if the username has * been banned by the administrator. */ function usernameBanned($username){ if(!get_magic_quotes_gpc()){ $username = addslashes($username); } $q = "SELECT username FROM ".TBL_BANNED_USERS." WHERE username = '$username'"; $result = mysql_query($q, $this->connection); return (mysql_numrows($result) > 0); } /** * addNewUser - Inserts the given (username, password, email) * info into the database. Appropriate user level is set. * Returns true on success, false otherwise. */ function addNewUser($username, $password, $email){ $time = time(); /* If admin sign up, give admin user level */ if(strcasecmp($username, ADMIN_NAME) == 0){ $ulevel = ADMIN_LEVEL; }else{ $ulevel = USER_LEVEL; } $q = "INSERT INTO ".TBL_USERS." VALUES ('$username', '$password', '0', $ulevel, '$email', $time)"; return mysql_query($q, $this->connection); } /** * updateUserField - Updates a field, specified by the field * parameter, in the user's row of the database. */ function updateUserField($username, $field, $value){ $q = "UPDATE ".TBL_USERS." SET ".$field." = '$value' WHERE username = '$username'"; return mysql_query($q, $this->connection); } /** * getUserInfo - Returns the result array from a mysql * query asking for all information stored regarding * the given username. If query fails, NULL is returned. */ function getUserInfo($username){ $q = "SELECT * FROM ".TBL_USERS." WHERE username = '$username'"; $result = mysql_query($q, $this->connection); /* Error occurred, return given name by default */ if(!$result || (mysql_numrows($result) < 1)){ return NULL; } /* Return result array */ $dbarray = mysql_fetch_array($result); return $dbarray; } /** * getNumMembers - Returns the number of signed-up users * of the website, banned members not included. The first * time the function is called on page load, the database * is queried, on subsequent calls, the stored result * is returned. This is to improve efficiency, effectively * not querying the database when no call is made. */ function getNumMembers(){ if($this->num_members < 0){ $q = "SELECT * FROM ".TBL_USERS; $result = mysql_query($q, $this->connection); $this->num_members = mysql_numrows($result); } return $this->num_members; } /** * calcNumActiveUsers - Finds out how many active users * are viewing site and sets class variable accordingly. */ function calcNumActiveUsers(){ /* Calculate number of users at site */ $q = "SELECT * FROM ".TBL_ACTIVE_USERS; $result = mysql_query($q, $this->connection); $this->num_active_users = mysql_numrows($result); } /** * calcNumActiveGuests - Finds out how many active guests * are viewing site and sets class variable accordingly. */ function calcNumActiveGuests(){ /* Calculate number of guests at site */ $q = "SELECT * FROM ".TBL_ACTIVE_GUESTS; $result = mysql_query($q, $this->connection); $this->num_active_guests = mysql_numrows($result); } /** * addActiveUser - Updates username's last active timestamp * in the database, and also adds him to the table of * active users, or updates timestamp if already there. */ function addActiveUser($username, $time){ $q = "UPDATE ".TBL_USERS." SET timestamp = '$time' WHERE username = '$username'"; mysql_query($q, $this->connection); if(!TRACK_VISITORS) return; $q = "REPLACE INTO ".TBL_ACTIVE_USERS." VALUES ('$username', '$time')"; mysql_query($q, $this->connection); $this->calcNumActiveUsers(); } /* addActiveGuest - Adds guest to active guests table */ function addActiveGuest($ip, $time){ if(!TRACK_VISITORS) return; $q = "REPLACE INTO ".TBL_ACTIVE_GUESTS." VALUES ('$ip', '$time')"; mysql_query($q, $this->connection); $this->calcNumActiveGuests(); } /* These functions are self explanatory, no need for comments */ /* removeActiveUser */ function removeActiveUser($username){ if(!TRACK_VISITORS) return; $q = "DELETE FROM ".TBL_ACTIVE_USERS." WHERE username = '$username'"; mysql_query($q, $this->connection); $this->calcNumActiveUsers(); } /* removeActiveGuest */ function removeActiveGuest($ip){ if(!TRACK_VISITORS) return; $q = "DELETE FROM ".TBL_ACTIVE_GUESTS." WHERE ip = '$ip'"; mysql_query($q, $this->connection); $this->calcNumActiveGuests(); } /* removeInactiveUsers */ function removeInactiveUsers(){ if(!TRACK_VISITORS) return; $timeout = time()-USER_TIMEOUT*60; $q = "DELETE FROM ".TBL_ACTIVE_USERS." WHERE timestamp < $timeout"; mysql_query($q, $this->connection); $this->calcNumActiveUsers(); } /* removeInactiveGuests */ function removeInactiveGuests(){ if(!TRACK_VISITORS) return; $timeout = time()-GUEST_TIMEOUT*60; $q = "DELETE FROM ".TBL_ACTIVE_GUESTS." WHERE timestamp < $timeout"; mysql_query($q, $this->connection); $this->calcNumActiveGuests(); } /** * query - Performs the given query on the database and * returns the result, which may be false, true or a * resource identifier. */ function query($query){ return mysql_query($query, $this->connection); }};/* Create database connection */$database = new MySQLDB;?>

    STEP 4
    1) Save this file as session.php
    NO CHANGES ARE REQUIRED TO THIS FILE

    <?
    /**
    * Session.php
    *
    * The Session class is meant to simplify the task of keeping
    * track of logged in users and also guests.
    *
    */
    include("database.php");
    include("mailer.php");
    include("form.php");

    class Session
    {
    var $username; //Username given on sign-up
    var $userid; //Random value generated on current login
    var $userlevel; //The level to which the user pertains
    var $time; //Time user was last active (page loaded)
    var $logged_in; //True if user is logged in, false otherwise
    var $userinfo = array(); //The array holding all user info
    var $url; //The page url current being viewed
    var $referrer; //Last recorded site page viewed
    /**
    * Note: referrer should really only be considered the actual
    * page referrer in process.php, any other time it may be
    * inaccurate.
    */

    /* Class constructor */
    function Session(){
    $this->time = time();
    $this->startSession();
    }

    /**
    * startSession - Performs all the actions necessary to
    * initialize this session object. Tries to determine if the
    * the user has logged in already, and sets the variables
    * accordingly. Also takes advantage of this page load to
    * update the active visitors tables.
    */
    function startSession(){
    global $database; //The database connection
    session_start(); //Tell PHP to start the session

    /* Determine if user is logged in */
    $this->logged_in = $this->checkLogin();

    /**
    * Set guest value to users not logged in, and update
    * active guests table accordingly.
    */
    if(!$this->logged_in){
    $this->username = $_SESSION['username'] = GUEST_NAME;
    $this->userlevel = GUEST_LEVEL;
    $database->addActiveGuest($_SERVER['REMOTE_ADDR'], $this->time);
    }
    /* Update users last active timestamp */
    else{
    $database->addActiveUser($this->username, $this->time);
    }

    /* Remove inactive visitors from database */
    $database->removeInactiveUsers();
    $database->removeInactiveGuests();

    /* Set referrer page */
    if(isset($_SESSION['url'])){
    $this->referrer = $_SESSION['url'];
    }else{
    $this->referrer = "/";
    }

    /* Set current url */
    $this->url = $_SESSION['url'] = $_SERVER['PHP_SELF'];
    }

    /**
    * checkLogin - Checks if the user has already previously
    * logged in, and a session with the user has already been
    * established. Also checks to see if user has been remembered.
    * If so, the database is queried to make sure of the user's
    * authenticity. Returns true if the user has logged in.
    */
    function checkLogin(){
    global $database; //The database connection
    /* Check if user has been remembered */
    if(isset($_COOKIE['cookname']) && isset($_COOKIE['cookid'])){
    $this->username = $_SESSION['username'] = $_COOKIE['cookname'];
    $this->userid = $_SESSION['userid'] = $_COOKIE['cookid'];
    }

    /* Username and userid have been set and not guest */
    if(isset($_SESSION['username']) && isset($_SESSION['userid']) &&
    $_SESSION['username'] != GUEST_NAME){
    /* Confirm that username and userid are valid */
    if($database->confirmUserID($_SESSION['username'], $_SESSION['userid']) != 0){
    /* Variables are incorrect, user not logged in */
    unset($_SESSION['username']);
    unset($_SESSION['userid']);
    return false;
    }

    /* User is logged in, set class variables */
    $this->userinfo = $database->getUserInfo($_SESSION['username']);
    $this->username = $this->userinfo['username'];
    $this->userid = $this->userinfo['userid'];
    $this->userlevel = $this->userinfo['userlevel'];
    return true;
    }
    /* User not logged in */
    else{
    return false;
    }
    }

    /**
    * login - The user has submitted his username and password
    * through the login form, this function checks the authenticity
    * of that information in the database and creates the session.
    * Effectively logging in the user if all goes well.
    */
    function login($subuser, $subpass, $subremember){
    global $database, $form; //The database and form object

    /* Username error checking */
    $field = "user"; //Use field name for username
    if(!$subuser || strlen($subuser = trim($subuser)) == 0){
    $form->setError($field, "* Username not entered");
    }
    else{
    /* Check if username is not alphanumeric */
    if(!eregi("^([0-9a-z])*$", $subuser)){
    $form->setError($field, "* Username not alphanumeric");
    }
    }

    /* Password error checking */
    $field = "pass"; //Use field name for password
    if(!$subpass){
    $form->setError($field, "* Password not entered");
    }

    /* Return if form errors exist */
    if($form->num_errors > 0){
    return false;
    }

    /* Checks that username is in database and password is correct */
    $subuser = stripslashes($subuser);
    $result = $database->confirmUserPass($subuser, md5($subpass));

    /* Check error codes */
    if($result == 1){
    $field = "user";
    $form->setError($field, "* Username not found");
    }
    else if($result == 2){
    $field = "pass";
    $form->setError($field, "* Invalid password");
    }

    /* Return if form errors exist */
    if($form->num_errors > 0){
    return false;
    }

    /* Username and password correct, register session variables */
    $this->userinfo = $database->getUserInfo($subuser);
    $this->username = $_SESSION['username'] = $this->userinfo['username'];
    $this->userid = $_SESSION['userid'] = $this->generateRandID();
    $this->userlevel = $this->userinfo['userlevel'];

    /* Insert userid into database and update active users table */
    $database->updateUserField($this->username, "userid", $this->userid);
    $database->addActiveUser($this->username, $this->time);
    $database->removeActiveGuest($_SERVER['REMOTE_ADDR']);

    /**
    * This is the cool part: the user has requested that we remember that
    * he's logged in, so we set two cookies. One to hold his username,
    * and one to hold his random value userid. It expires by the time
    * specified in constants.php. Now, next time he comes to our site, we will
    * log him in automatically, but only if he didn't log out before he left.
    */
    if($subremember){
    setcookie("cookname", $this->username, time()+COOKIE_EXPIRE, COOKIE_PATH);
    setcookie("cookid", $this->userid, time()+COOKIE_EXPIRE, COOKIE_PATH);
    }

    /* Login completed successfully */
    return true;
    }

    /**
    * logout - Gets called when the user wants to be logged out of the
    * website. It deletes any cookies that were stored on the users
    * computer as a result of him wanting to be remembered, and also
    * unsets session variables and demotes his user level to guest.
    */
    function logout(){
    global $database; //The database connection
    /**
    * Delete cookies - the time must be in the past,
    * so just negate what you added when creating the
    * cookie.
    */
    if(isset($_COOKIE['cookname']) && isset($_COOKIE['cookid'])){
    setcookie("cookname", "", time()-COOKIE_EXPIRE, COOKIE_PATH);
    setcookie("cookid", "", time()-COOKIE_EXPIRE, COOKIE_PATH);
    }

    /* Unset PHP session variables */
    unset($_SESSION['username']);
    unset($_SESSION['userid']);

    /* Reflect fact that user has logged out */
    $this->logged_in = false;

    /**
    * Remove from active users table and add to
    * active guests tables.
    */
    $database->removeActiveUser($this->username);
    $database->addActiveGuest($_SERVER['REMOTE_ADDR'], $this->time);

    /* Set user level to guest */
    $this->username = GUEST_NAME;
    $this->userlevel = GUEST_LEVEL;
    }

    /**
    * register - Gets called when the user has just submitted the
    * registration form. Determines if there were any errors with
    * the entry fields, if so, it records the errors and returns
    * 1. If no errors were found, it registers the new user and
    * returns 0. Returns 2 if registration failed.
    */
    function register($subuser, $subpass, $subemail){
    global $database, $form, $mailer; //The database, form and mailer object

    /* Username error checking */
    $field = "user"; //Use field name for username
    if(!$subuser || strlen($subuser = trim($subuser)) == 0){
    $form->setError($field, "* Username not entered");
    }
    else{
    /* Spruce up username, check length */
    $subuser = stripslashes($subuser);
    if(strlen($subuser) < 5){
    $form->setError($field, "* Username below 5 characters");
    }
    else if(strlen($subuser) > 30){
    $form->setError($field, "* Username above 30 characters");
    }
    /* Check if username is not alphanumeric */
    else if(!eregi("^([0-9a-z])+$", $subuser)){
    $form->setError($field, "* Username not alphanumeric");
    }
    /* Check if username is reserved */
    else if(strcasecmp($subuser, GUEST_NAME) == 0){
    $form->setError($field, "* Username reserved word");
    }
    /* Check if username is already in use */
    else if($database->usernameTaken($subuser)){
    $form->setError($field, "* Username already in use");
    }
    /* Check if username is banned */
    else if($database->usernameBanned($subuser)){
    $form->setError($field, "* Username banned");
    }
    }

    /* Password error checking */
    $field = "pass"; //Use field name for password
    if(!$subpass){
    $form->setError($field, "* Password not entered");
    }
    else{
    /* Spruce up password and check length*/
    $subpass = stripslashes($subpass);
    if(strlen($subpass) < 4){
    $form->setError($field, "* Password too short");
    }
    /* Check if password is not alphanumeric */
    else if(!eregi("^([0-9a-z])+$", ($subpass = trim($subpass)))){
    $form->setError($field, "* Password not alphanumeric");
    }
    /**
    * Note: I trimmed the password only after I checked the length
    * because if you fill the password field up with spaces
    * it looks like a lot more characters than 4, so it looks
    * kind of stupid to report "password too short".
    */
    }

    /* Email error checking */
    $field = "email"; //Use field name for email
    if(!$subemail || strlen($subemail = trim($subemail)) == 0){
    $form->setError($field, "* Email not entered");
    }
    else{
    /* Check if valid email address */
    $regex = "^[_+a-z0-9-]+(\.[_+a-z0-9-]+)*"
    ."@[a-z0-9-]+(\.[a-z0-9-]{1,})*"
    ."\.([a-z]{2,}){1}$";
    if(!eregi($regex,$subemail)){
    $form->setError($field, "* Email invalid");
    }
    $subemail = stripslashes($subemail);
    }

    /* Errors exist, have user correct them */
    if($form->num_errors > 0){
    return 1; //Errors with form
    }
    /* No errors, add the new account to the */
    else{
    if($database->addNewUser($subuser, md5($subpass), $subemail)){
    if(EMAIL_WELCOME){
    $mailer->sendWelcome($subuser,$subemail,$subpass);
    }
    return 0; //New user added succesfully
    }else{
    return 2; //Registration attempt failed
    }
    }
    }

    /**
    * editAccount - Attempts to edit the user's account information
    * including the password, which it first makes sure is correct
    * if entered, if so and the new password is in the right
    * format, the change is made. All other fields are changed
    * automatically.
    */
    function editAccount($subcurpass, $subnewpass, $subemail){
    global $database, $form; //The database and form object
    /* New password entered */
    if($subnewpass){
    /* Current Password error checking */
    $field = "curpass"; //Use field name for current password
    if(!$subcurpass){
    $form->setError($field, "* Current Password not entered");
    }
    else{
    /* Check if password too short or is not alphanumeric */
    $subcurpass = stripslashes($subcurpass);
    if(strlen($subcurpass) < 4 ||
    !eregi("^([0-9a-z])+$", ($subcurpass = trim($subcurpass)))){
    $form->setError($field, "* Current Password incorrect");
    }
    /* Password entered is incorrect */
    if($database->confirmUserPass($this->username,md5($subcurpass)) != 0){
    $form->setError($field, "* Current Password incorrect");
    }
    }

    /* New Password error checking */
    $field = "newpass"; //Use field name for new password
    /* Spruce up password and check length*/
    $subpass = stripslashes($subnewpass);
    if(strlen($subnewpass) < 4){
    $form->setError($field, "* New Password too short");
    }
    /* Check if password is not alphanumeric */
    else if(!eregi("^([0-9a-z])+$", ($subnewpass = trim($subnewpass)))){
    $form->setError($field, "* New Password not alphanumeric");
    }
    }
    /* Change password attempted */
    else if($subcurpass){
    /* New Password error reporting */
    $field = "newpass"; //Use field name for new password
    $form->setError($field, "* New Password not entered");
    }

    /* Email error checking */
    $field = "email"; //Use field name for email
    if($subemail && strlen($subemail = trim($subemail)) > 0){
    /* Check if valid email address */
    $regex = "^[_+a-z0-9-]+(\.[_+a-z0-9-]+)*"
    ."@[a-z0-9-]+(\.[a-z0-9-]{1,})*"
    ."\.([a-z]{2,}){1}$";
    if(!eregi($regex,$subemail)){
    $form->setError($field, "* Email invalid");
    }
    $subemail = stripslashes($subemail);
    }

    /* Errors exist, have user correct them */
    if($form->num_errors > 0){
    return false; //Errors with form
    }

    /* Update password since there were no errors */
    if($subcurpass && $subnewpass){
    $database->updateUserField($this->username,"password",md5($subnewpass));
    }

    /* Change Email */
    if($subemail){
    $database->updateUserField($this->username,"email",$subemail);
    }

    /* Success! */
    return true;
    }

    /**
    * isAdmin - Returns true if currently logged in user is
    * an administrator, false otherwise.
    */
    function isAdmin(){
    return ($this->userlevel == ADMIN_LEVEL ||
    $this->username == ADMIN_NAME);
    }

    /**
    * generateRandID - Generates a string made up of randomized
    * letters (lower and upper case) and digits and returns
    * the md5 hash of it to be used as a userid.
    */
    function generateRandID(){
    return md5($this->generateRandStr(16));
    }

    /**
    * generateRandStr - Generates a string made up of randomized
    * letters (lower and upper case) and digits, the length
    * is a specified parameter.
    */
    function generateRandStr($length){
    $randstr = "";
    for($i=0; $i<$length; $i++){
    $randnum = mt_rand(0,61);
    if($randnum < 10){
    $randstr .= chr($randnum+48);
    }else if($randnum < 36){
     


  20. Okay i made changes to the website layout now im ready to start adding content. My website is a Metal music site and i need some lyrics, videos, and songs to go on it now. So the lyrics can be any kind of Hard rock. Same with the videos and songs. Also if anyone has any download sites that have LEGAL music for sale/download please also mention it here. And im trying to drive more traffic to the site so if any one is willing to put one of my two banners on there site i will be happy to put a banner or link (which ever you preffer) on my site in the link section and i will leave it there for as long as my banner stays on your site. And lastly if anyone knows how to make a login script without having to mess around with the HTML thats already on my site too much can you please tell me how to make one. Thanks for the help

×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | 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.