Allora ragazzi, io ho seguito una guida per creare una Chat e per creare il Login e la Registrazione con PHP, adesso vi do i codici di tutte le pagine e alla fine vi spiego il problema:
index.php:
checklogin.php:
checkregister.php:
login_success.php:
logout.php:
Ecco i problemi:
1) Vorrei che al posto del refresh ci sia un bottone che aggiorni la chat quando lo si clicca.
2) Vorrei togliere il nome nella chat e che prenda il nome con il quale ho fatto il login.
3) Vorrei che nel registra ci sia anche la mail e che per registrarsi si deve confermare la mail.
Cosa devo inserire e dove XD?
Se c'e qualcosa che non capite chiedete.
Spiegate il piu dettagliatamente possibile visto che sono imbranato, grazie. XD
Se servono anche i codici del database chiedete pure anche quelli. XD
index.php:
PHP:
<html>
<head>
</head>
<body>
<form action="checklogin.php" method="post">
<input type="text" name="myusername" placeholder="Username" />
<input type="password" name="mypassword" placeholder="Password" c/>
<input type="submit" name="Submit" value="Entra" />
</form>
<form action="checkregister.php" method="post">
<input type="text" name="username" placeholder="Username" />
<input type="password" name="password" placeholder="Password" />
<input type="submit" name="Submit" value="Registrati" />
</form>
<form action="logout.php" method="post">
<input type="submit" value="Esci" />
</form>
</body>
</html>
checklogin.php:
PHP:
<?php
$host="localhost"; // Hostname
$username=""; // Mysql username
$password=""; // Mysql password
$db_name=""; //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";
}
?>
checkregister.php:
PHP:
<?php
$host="localhost"; // Hostname
$username=""; // Mysql username
$password=""; // Mysql password
$db_name=""; //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);
/* ritorno in home */
header("location:login_success.php");
?>
login_success.php:
PHP:
<?php
session_start();
if(!session_is_registered(myusername)){
header("location:index.php");
}
?>
<?php
// Configurazioni
// Variabili di configurazione (indirizzo, username, password)
$mysql_host="localhost";
$mysql_username="";
$mysql_password="";
$mysql_database="";
?>
<?php
// Connettiamoci a mysql e al database
$connect=mysql_connect($mysql_host, $mysql_username, $mysql_password);
$db=mysql_select_db($mysql_database, $connect);
if(!$connect){echo "<p>Impossibile connettersi al server!</p>";}
if(!$db){echo "<p>Impossibile connettersi al database!</p>";}
?>
<html>
<head>
<style type="text/css">
.chat {
background-color: transparent;
border: 1px solid;
height:300px;
width:300px;
overflow:auto;
}
</style>
<script type="text/Javascript">
function scroll()
{
var div=document.getElementById('chat');
div.scrollTop=100000000;
}
</script>
<meta http-equiv="refresh" content="300"; url=<?php echo $_SERVER['PHP_SELF']; ?>">
</head>
<body OnLoad="scroll();">
<center>
<p><font size="10px;">Chat</font></p>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<div id="chat" class="chat">
<?php
$name=$_POST['name'];
$message=$_POST['text'];
if ($name AND $message)
{
mysql_query("INSERT INTO Chat VALUES ('$name', '$message');");
}
$query_select=mysql_query("SELECT * FROM Chat");
while($rows=mysql_fetch_array($query_select))
{
echo "<p>{$rows['names']}:</p><p></p>";
$messages=htmlspecialchars($rows['messages']);
echo "<p align=”left“>$messages</p>";
}
?>
</div>
<table>
<tr>
<td>Nome:</td>
<td><input type="text" name="name" value="<?php echo $name; ?>"></td>
</tr>
<tr>
<td>Testo:</td>
<td><textarea name="text"></textarea></td>
</tr>
<table>
<tr>
<td><input type="submit" value="Invia"></td>
</tr>
</table>
</form>
</center>
</body>
</html>
logout.php:
PHP:
<?php
session_start();
session_destroy();
header("location:index.php");
?>
Ecco i problemi:
1) Vorrei che al posto del refresh ci sia un bottone che aggiorni la chat quando lo si clicca.
2) Vorrei togliere il nome nella chat e che prenda il nome con il quale ho fatto il login.
3) Vorrei che nel registra ci sia anche la mail e che per registrarsi si deve confermare la mail.
Cosa devo inserire e dove XD?
Se c'e qualcosa che non capite chiedete.
Spiegate il piu dettagliatamente possibile visto che sono imbranato, grazie. XD
Se servono anche i codici del database chiedete pure anche quelli. XD