私はプログラミングフィールドの初心者です。データベーステーブルの値をPHPコードを使用して配列に取得する方法は?
私のコンセプトは、ユーザーIDとパスワードのチェックを行った後、ログインページからホームページに移動することです。私はフィールド 'user_id' & 'パスワード'を持つデータベーステーブルを持っています。だから私はテーブルから配列へのデータを取得し、それをユーザーが入力した値と比較したいと思っています...どうすれば最も簡単な方法が可能ですか?
私はプログラミングフィールドの初心者です。データベーステーブルの値をPHPコードを使用して配列に取得する方法は?
私のコンセプトは、ユーザーIDとパスワードのチェックを行った後、ログインページからホームページに移動することです。私はフィールド 'user_id' & 'パスワード'を持つデータベーステーブルを持っています。だから私はテーブルから配列へのデータを取得し、それをユーザーが入力した値と比較したいと思っています...どうすれば最も簡単な方法が可能ですか?
私はいつも、私はあなたが連想配列を取得するので、あなたは、フィールド名で作業することができてそれがより良い動作するはずだと思う
$query = "...";
$sql = mysql_query($query);
while($row = mysql_fetch_assoc($sql)) {
$user_id = $row['user_id'];
// ...
}
を使用しています。 SUM(*)
を選択する場合は、$row['SUM(*)']
を入力するか、SQLで名前を付ける必要があります。
あなたはほとんどリサーチを行っていませんが、あなたの質問はかなり広いですが、私はあなたにいくつかの手がかりを与えるかもしれない例を示します。
$username = mysql_real_escape_string($_POST['username']); //escaping the string, will use it in a query
$password = $_POST['password'];
$result = mysql_query("SELECT password FROM users WHERE username = '$username'");
if (mysql_num_rows($result) == 1) { // Expecting one result
$userdata = mysql_fetch_array($result);
if ($password == $userdata['password']) {
// USER IS AUTHORISED
} else {
// USER IS NOT AUTHORISED
}
}
これは簡単な例です。
の考慮事項:
md5("string to hash")
を使用してハッシュを生成できます。あなたが助けを必要とする場合は、別の質問を開始してください。ありがとうございました....... – arunrc
あなたがmysql_fech_arrayを()を使用していることを行うことができ、この
// HTML
<form method="post">
<input type="text" name="username" />
<input type="password" name="password" />
<input type="submit" name="login" value="login"/>
</form>
// PHP
if(isset($_POST['login']))
{
$username=$_POST['username'];
$password=$_POST['password'];
$username=mysql_real_escape_string($username);
$password=mysql_real_escape_string($password);
$query = "select username,password from tableName
where username='$username' and password='$password'";
$sql = mysql_query($query);
if(mysql_num_rows($sql) == 1)
{
// Login success save username in session redirect to homepage
header("location:homepage.php");
exit();
}
else
{
// Display error message
}
}
$username="username";
$password="password";
//Specify MySQL database to connect to
$database="database";
//Create connection and select the appropriate database
mysql_connect("localhost",$username,$password);
@mysql_select_db($database) or die("Unable to select database");
//Get the username and password from posted form
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
//Build the query to look for users that exist with that username/password combination
//Here I'm using the users table within my database
$query = "SELECT * FROM users where username=\"$username\" and password = \"$password\" ";
//Retrieve the results of the query, and also aquire the number of records returned
$result = mysql_query($query);
$num = mysql_numrows($result);
//Check to see how many records are returned
if ($num>0)
{
//User login was successful
echo 'success login';
} else {
//Login was unsuccessful
echo 'user name not found';
}
を試してみてください。 –
'if statements'の使い方を学び、MySQLからデータを取得する方法を学びました。あなたはすでに'リダイレクト 'を学んだ後、それらをまとめました。 – MrCode
$ sql = "user_id、user_detailsからパスワードを選択"; $ result = mysql_query($ sql、$ con); if(!$ result) { die( 'Error:'。mysql_error()); } $行= mysql_fetch_array($結果、MYSQL_BOTH); 私のコードはこのようなものです。次に、 '行'の内容を入力したテキストフィールドと比較したいのですが、どのようにしてforループを使って比較するのですか? – arunrc