私はデータベースに接続するための簡単なチュートリアルを探して、次にユーザー名とパスワードを比較してアクセスできるようにしたいと考えました。これは初心者向けのコーディングですが、少なくとも私は練習してうまくいけば、もっとプログラミングをすることができます。PHPとSQLを練習しようとしていますが、私はロジックが正しいかどうか分かりません
check.php
<?php
//Need session//
$username = 'root';
$password = 'root';
$host = 'localhost';
$db_name = 'pcart';
$connection = mysql_connect($host, $username, $password) or die('cannot be connected');
mysql_select_db($db_name, $connection) or die ('Could not select database');
$user=$_POST['username'];
$pass=$_POST['password'];
$query = "Select username, password from tbladmins";
$user_result = mysql_query($query);
echo $user_result;
if (mysql_num_rows($user_result)==0)
{
echo "no rows to print";
}
while ($row=mysql_fetch_array($user_result, MYSQL_ASSOC))
{
$checkuser=$row["username"];
$checkpass=$row["password"];
}
mysql_free_result($user_result);
if !($user == $checkuser and $pass == $checkpass)
{
echo'where are you';
$results= mysql_query("Select * from tbladmins;") or die('error connecting to mysql');
if(mysql_num_rows($results)==0)
{
echo "no rows found, nothing to print so i am exiting";
}
print "test successful"
mysql_free_result($results);
}
else
{
echo "Wrong user or password! If you forgot, email Josephine for the username
and password";
}
?>
のindex.php
<html>
<head>
<title>Partner Portal
</title>
</head>
<body id="partners-page">
<div id="main">
<form method="post" action="Check.php">
<input type="text" name="username" value=""/>
<input type="password" name="password" value=""/>
<input type="submit" name="submit" value="submit">
<input type="reset" name="reset" value="reset">
</form>
<a href="#">forgotten password</a>
</div>
<!--#main-->
</div><!--div partner-page-->
</html>
EDIT
問題は、ユーザー名とパスワードが一致した場合、私がテストしていたときに、それは何も表示されませんということですデータベースにあるもの...だから私は何か見落としましたか?ユーザー名とパスワードの入力をテストしたときにページが空白になったのはなぜですか?
$ locahost = 'localhost'のスペルが間違っています。 dbconfig.phpでは、$ localhost = 'localhost'でなければなりません。 –
データベース接続にPDOを使用することを検討してください。 – tamasd
@弥来、PDOとは何ですか?私が無知であれば申し訳ありませんが、コードを書き始めました。 – joe