Okay, so I'm creating a forum for my project work which needs to be in 2weeks time!! And I haven't done much!!! aaaarrghh!
So far created these pages:-
default.html = login page
login.php = checks the username and password, if correct goes to the forum
register.html = fills in the form for new user
register.php = saves the record on the database and should let the user log in with their username and password
home.html = forum
Database:-
user = new users who registers
login = admin [me]
Been trying to work out how to the following:
- get the user to regsitered to log in
- error messages: username between 7-20 characters etc
- the new user date of birth to display right on the database
- forum setion = MAIN ONE
Codes:
register.php:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>UK-Chinese Channel | Register</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<?php
include("include.php");
$hostname = "localhost";
$name = $_POST['Username'];
$password = $_POST['Password'];
$password2 = $_POST['Password2'];
$email = $_POST['Email'];
$gender = $_POST['Gender'];
$dob = $_POST['DateOfBirth_Day'];
$dob2 = $_POST['DateOfBirth_Month'];
$dob3 = $_POST['DateOfBirth_Year'];
$Date = mktime (0,0,0,$dob2, $dob, $dob3);
if ($_POST['name'] | $_POST['password'] | $_POST['password2'] | $_POST['email'] $_POST['dob'] | $_POST['dob2'] | $_POST['dob3']) {
die('You did not fill in a required field.');
}
if ($name >= 10 && $name <= 20) {
$errorMessage = "";
}
else {
$errorMessage = $errorMessage . "Username must be between 10 and 20 characters". <br>;
}
if ($password >= 8 && $password <= 16) {
$errorMessage = "";
}
else {
$errorMessage = $errorMessage . "Password must be between 8 and 16 characters". <br>;
}
if($password==$password2){
// connect to db
$result = mysql_connect($hostname, $username, 'Password1') or die(mysql_error());
//Select the database
$rs= @mysql_select_db($databaseName) or die(mysql_error());
$query="INSERT into users (username,password,date,email,gender) VALUES ('$name','$password',$Date,'$email','$gender')";
$result=mysql_query($query) or die("insert error: ".mysql_error());
mysql_close();
echo "<h2>Thank You! You have registered sucessfully!!</h2>";
header("Refresh: 4;URL=home.html");
die();
}
else {
echo "<h2>Passwords doesn't match!</h2>";
echo "<h1>Please try again!</h1>";
header("Refresh: 2;URL=register.html");
die();
};
?>
login.php:
<?php
session_start();
include("include.php");
$hostname = "localhost";
if ((isset($_POST['Username'])) && (isset($_POST['Password']))) {
$user = $_POST['Username'];
$pass = $_POST['Password'];
// connect to db
$result = mysql_connect($hostname, $username, $password) or die(mysql_error());
//Select the database
$result = mysql_select_db($databaseName) or die(mysql_error());
$query = "select Username, Password FROM login AND users where Username = '$user'" .
"AND Password = (PASSWORD('$pass'))";
$result = mysql_query($query) or die(mysql_error());
if(mysql_num_rows($result)!=1){
echo "<h2>Wrong password or username!.</h2>";
echo "<h3>You are being redirected...</h3>";
header("Refresh: 4;URL=default.html");
die();
}else{
$_SESSION['user_logged'] = $_POST['Username'];
$_SESSION['user_password'] = $_POST['Password'];
header('Location:home.html');
}
}
?>
hmm.. not sure what other codes you'd like to see, but if you wanna check/test it out. Here's the following details.
WinSCP:
Host Name:
Username: XXXXXXXXXXXXXXX
Password: ********
PHP myadmin:
Username: XXXXXXXXXXXXXXX
Password: ********
Login Page to my forum:
Username: XXXXXXXXXXXXXXX
Password: ********
Really appreciate all the help!!! Desperately need help! I am very new to all this and when i look on the net for the codes - i cant seem to match it to mine!. 🙁