Creare pagina di login e registrazione

« Older   Newer »
  Share  
GHOST-ITA
CAT_IMG Posted on 14/9/2011, 20:16     +1   -1




Ho notato che è molto richiesto l'aiuto alla costruzione di una database, e permettere a questo ti trasmettere e ricevere informazioni.

Il primo passo da fare per attivare un database è quello di andare in:

AlterSito > Database e attivare e confermare l'utilizzo di un database (cosa semplicissima, non bisogna impostare nulla per ora).

Dopo che avete attivato un database di una qualsiasi classe, ritornate in

AlterSito > Database > PhpMyAdmin (Cliccare sull'immagine)

Effettuale l'accesso al database mettendo id e password di altervista e a questo punto vi ritroverete nella pagina principale di PhpMyAdmin

A lato c'è un menù con 5 piccole icone: voi dovete cliccare su quella con "SQL", subito dopo quella con scritto "Exit".

Si aprirà una pagina con un grande spazio di testo, dove dovete incollare questo codice:

CODICE
CREATE TABLE `members` (
`id` INT(4) NOT NULL AUTO_INCREMENT,
`username` VARCHAR(65) NOT NULL DEFAULT '',
`password` VARCHAR(65) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=2 ;

--
-- Dumping data for table `members`
--

1INSERT INTO `members` VALUES (1, 'admin', 'admin2');


PS: se volete direttamente inserire i vostri dati di accesso, al posto di admin e admin2 mettete rispettivamente id e password, altrimenti cancellate l'ultima riga:

CODICE
1INSERT INTO `members` VALUES (1, 'admin', 'admin2');


Poi cliccate su esegui.

NB: Creerà una tabella di nome members.

A questo punto vi dirà che la query è stata eseguita correttamente; uscite da PhpMyAdmin.

Crea una nuova pagina di registrazione, per esempio registrazione.php
ed incollate questo codice:

CODICE
</HEAD>
<BODY>
<table border="0" cellspacing="1" cellpadding="0" width="300" align="center" bgcolor="#cccccc"><tbody>
<tr><form action="provaregistrazione.php" method="post"> <input name="phpMyAdmin" type="hidden" value="V0N0db6Fl62QWr6eBkly75xAGn3" /><td>
<table border="0" cellspacing="1" cellpadding="3" width="100%" bgcolor="#ffffff"><tbody>
<tr>
<td colspan="3"><strong>Registrazione</strong></td>
</tr>
<tr>
<td width="78">Username</td>
<td width="6">:</td>
<td width="294"><input id="username" name="username" type="text" /></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input id="password" name="password" type="password" /></td>
</tr>
<tr>
<td></td>
<td></td>
<td><input name="Submit" type="submit" value="Registrati" /></td>
</tr>
</tbody></table>
</td>
</form></tr>
</tbody></table>
</BODY>
</HTML>


NB: qui chiede solo id e password, ma potete aggiungere e-mail, conferma e-mail e password ecc...

Cliccando sul pulsante "Registrati" andrà alla pagina provaregistrazione.php
come potete vedere qui:

CODICE
<form action="provaregistrazione.php" method="post">


In questa pagina ci andrà il codice php:

CODICE
<?php
$host="localhost"; // Hostname
$username="programmarealpc"; // Mysql username
$password=""; // Mysql password
$db_name="my_programmarealpc"; //Nome del Database
$tbl_name="members"; // Nome della Tabella
$db = mysql_connect($localhost,$username,$password);
mysql_select_db($db_name,$db);

$username = $_POST['username'];
$password = $_POST['password'];

mysql_query("INSERT INTO ".$tbl_name." (username,password) VALUES ('$username','$password')",$db) || die(mysql_error());

/* quindi i dati sono stati salvati nel database e l'utente è registrato */
mysql_close($db);
?>


Dove qui ci andrà l'id che si usa per accedere a PhpMyAdmin (per facilitare le cose):

CODICE
$username="programmarealpc"; // Mysql username


Mentre qui potete lasciare vuoto:

CODICE
$password=""; // Mysql password


Infine il nome del database che, se non lo avete cambiato, dovrebbe essere my_nomesito nel mio caso infatti si chiama my_programmarealpc :

CODICE
$db_name="my_programmarealpc"; //Nome del Database


Così avremmo finito di fare la pagina di registrazione ( fatta semplice semplice per semplificare ).

Ora creiamo la pagina di login main_login.php :

CODICE
<HTML>
<HEAD>
<TITLE>prova</TITLE>
</HEAD>
<BODY>
<table border="0" cellspacing="1" cellpadding="0" width="300" align="center" bgcolor="#cccccc"><tbody>
<tr><form action="checklogin.php" method="post"> <input name="phpMyAdmin" type="hidden" value="V0N0db6Fl62QWr6eBkly75xAGn3" /><td>
<table border="0" cellspacing="1" cellpadding="3" width="100%" bgcolor="#ffffff"><tbody>
<tr>
<td colspan="3"><strong>Member Login </strong></td>
</tr>
<tr>
<td width="78">Username</td>
<td width="6">:</td>
<td width="294"><input id="myusername" name="myusername" type="text" /></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input id="mypassword" name="mypassword" type="password" /></td>
</tr>
<tr>
<td></td>
<td></td>
<td><input name="Submit" type="submit" value="Login" /></td>
</tr>
</tbody></table>
</td>
</form></tr>
</tbody></table>
</BODY>
</HTML>


Premendo il pulsante "Login" andrà alla pagina checklogin.php che dovrà avere questo codice:

CODICE
<?php
$host="localhost"; // Hostname
$username="programmarealpc"; // Mysql username
$password=""; // Mysql password
$db_name="my_programmarealpc"; //Nome del Database
$tbl_name="members"; // Nome della Tabella
// Procedimento per connettersi al Database
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// Nome utente e password inviate attraverso il form
$myusername=$_POST['myusername'];
$mypassword=$_POST['mypassword'];
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
session_register("myusername");
session_register("mypassword");
header("location:login_success.php");
}
else {
echo "Attenzione username o password errati";
}
?>


Per username, password e db_name le stesse note riportate nella pagina di registrazione.

Se id e password sono corretti andrete nella pagina che volete in questo caso
login_success.php
la pagina comunque dovrà avere questo codice php per evitare che ci si possa andare anche senza essere loggati:

CODICE
<?php
// Controlla se la sessione è stata registrata, altrimenti rimanda alla pagina di login
// Questa prima parte dobbiamo inserirla in tutte le pagine che vogliamo proteggere con password prima di qualsiasi altra cosa
session_start();
if(!session_is_registered(myusername)){
header("location:main_login.php");
}
?>
 
Top
0 replies since 14/9/2011, 20:16   56 views
  Share