.htmlと.phpを使用しています。default.htmlでは、ユーザーはいくつかの情報を入力する必要があり、ボタンがクリックされると、htmlはdefault2.phpに投稿します。default2.phpでは、データがチェックされ、正しい場合はユーザーを別のページにリダイレクトします。私が抱えている問題は、入力されたデータが間違っている場合です。ここで2つの問題が発生しています。
- データが間違っている場合は、ユーザーをdefault.htmlにリダイレクトします。これを行わないと、データはdefault2.phpのままになり、default2.phpはユーザーにとって重要なものではないためです。これがこれを行うための最良の方法であるかどうかはわかりません。
- 入力したデータが間違っている場合、default.htmlでユーザーにエコーメッセージを送りたいです。しかし、default2.phpからこれをトリガーする方法がわかりません。
これらの2つの問題をどのように解決できますか?ありがとう...
default.html:
<!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>
<script type="text/javascript">
</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>PHP4</title>
<style type="text/css">
body {
background-color: #CCC;
}
</style>
</head>
<body>
<p> </p>
<form id="form1" name="form1" method="post" action="default2.php">
<p>
<label for="textfield1">User Name</label>
<input type="text" name="username" id="username" />
</p>
<p>
<label for="textfield2">Password</label>
<input type="password" name="password" id="password" />
</p>
<p>
<input type="submit" name="button1" id="button1" value="Submit" />
<br />
<br />
<label id="label1">
</label></p>
<p> </p>
</form>
<p> </p>
</body>
</html>
default2.php:
<?php
require 'connection.php';
if (isset($_POST['button1'])) {
$username_v = $_POST['username'];
$password_v = $_POST['password'];
// Then you can prepare a statement and execute it.
$stmt = $dbh->prepare("CALL login(?, ?)");
$stmt->bindParam(1, $username_v, PDO::PARAM_STR);
$stmt->bindParam(2, $password_v, PDO::PARAM_STR);
// call the stored procedure
$stmt->execute();
if ($row = $stmt->fetch(PDO::FETCH_NUM, PDO::FETCH_ORI_NEXT))
{
header("Location: main.php");
}
else
{
header("Location: default.html");
}
}
?>