PHP로 ID와 비밀번호 등록 화면, 확인 화면 만들기
                                            
                                                
                                                
                                                
                                                
                                                
                                                 15775 단어  phpMyadminPHPMyS
                    
ID 및 비밀번호 등록 화면
 출처
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
</head>
<title>Hello shop</title>
<body>
  スタッフ追加<br />
  <br />
  <form method="post" action="staff_add_check.php"> <!--postメソッドで、staff_add_check.phpに情報を引き渡す-->
    スタッフ名を入力してください。<br />
    <input type="text" name="name" style="width:100px"><br /> <!--入力された値はtext型。値はnameと名づける-->
    パスワードを入力してください。<br />
    <input type="password" name="pass" style="width:100px"><br /> <!--入力された値はpassword型。アスタリスク表示される。値はpassと名づける。-->
    パスワードをもう一度入力してください。<br />
    <input type="password" name="pass2" style="width:100px"><br /> <!--入力された値はtext型。値はpass2と名づける-->
    <br />
    <input type="button" onclick="history.back()" value="戻る"> <!--戻るボタンをクリックすると、前の画面に遷移する-->
    <input type="submit" value="OK"> <!--OKボタンをクリックすると、staff_add_check.phpに遷移する-->
  </form>
</body>
</html>
 화면
 
 확인 화면
 출처
<!DOCTYPE htmel>
<html>
<head>
  <meta charset="utf-8">
</head>
<title>Hello shop</title>
<body>
<?php
$staff_name=$_POST['name']; //前の画面から入力値を受け取り、$staff_nameに格納
$staff_pass=$_POST['pass']; //前の画面から入力値を受け取り、$staff_passに格納
$staff_pass2=$_POST['pass2']; //前の画面から入力値を受け取り、$staff_pass2に格納
$staff_name=htmlspecialchars($staff_name,ENT_QUOTES,'UTF-8'); //文字列に変換(セキュリティ対策)
$staff_pass=htmlspecialchars($staff_pass,ENT_QUOTES,'UTF-8'); //文字列に変換(セキュリティ対策)
$staff_pass2=htmlspecialchars($staff_pass2,ENT_QUOTES,'UTF-8'); //文字列に変換(セキュリティ対策)
//$staff_nameがカラならエラーメッセージを表示する
//$staff_nameが入力されていれば、$staff_nameを表示する
if($staff_name==''){
  print 'スタッフ名が入力されていません。<br />';
}
else
{
  print 'スタッフ名:';
  print $staff_name;
  print '<br />';
}
//$staff_passがカラならエラーメッセージを表示する
if($staff_pass==''){
  print 'パスワードが入力されていません。<br />';
}
//$staff_pass、$staff_pass2が一致しなければ、エラーメッセージを表示する
if($staff_pass!=$staff_pass2){ //もしパスワード1とパスワード2の値が異なるなら
  print 'パスワードが一致しません。<br />';
}
//$staff_name、$staff_pass、$staff_pass2がカラなら、または、$staff_pass、$staff_pass2が一致しなければ、戻るボタンのみを表示する
//入力項目が適切なら、戻るボタンとOKボタンを表示する。
if($staff_name==''|| $staff_pass=='' || $staff_pass2=='' || $staff_pass!=$staff_pass2){
  print '<form>';
  print '<input type="button" onclick="history.back()" value="戻る">';
  print '<form>';
}
else
{
  $staff_pass=md5($staff_pass); //パスワードをMD5規約に則って32桁のランダム値に変換
  print '<form method="post" action="staff_add_done.php">';
  print '<input type="hidden" name="name" value="'.$staff_name.'">'; //'<input type="hidden" name="name" value="'と$staff_nameをドットで連結
  print '<input type="hidden" name="pass" value="'.$staff_pass.'">'; //hiddenにすることで画面に表示することなく次の画面に値を引き渡せる
  print '<br />';
  print '<input type="button" onclick="history.back()" value="戻る">';
  print '<input type="submit" value="OK">';
  print '</form>';
}
?>
</body>
</html>
 화면
 
 데이터베이스 연결
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
</head>
<title>Hello shop</title>
<body>
<?php
//tryはデータベースの接続エラー対策
try
{
  // POSTメソッドで前の画面の入力値を取得する
  $staff_name = $_POST['name'];
  $Staff_pass = $_POST['pass'];
  // セキュリティ対策入力値を文字列に変換
  $staff_name = htmlspecialchars($staff_name,ENT_QUOTES,'UTF-8');
  $Staff_pass = htmlspecialchars($Staff_pass,ENT_QUOTES,'UTF-8');
  //データベースに接続
  $dsn = 'mysql:dbname=shop;host=localhost;charset=utf8'; //shopはデータベース名を入力。''内は一切スペースを入れてはいけない
  $user = 'root'; //rootにはユーザ名を入力
  $password = '';  //''内にはパスワードを入力
  $dbh = new PDO($dsn, $user, $password);
  $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); //この行は定型文としてこのまま書く
  // SQL分を使ってレコードを追加
  $sql ='INSERT INTO mst_staff(name,password) VALUES (?,?)'; //'INSERT INTO mst_staff(name,password) VALUES (?,?)'を変数$sqlに格納する
  $stmt = $dbh->prepare($sql); // レコードを追加する準備。この行は定型文としてこのまま書く
  $data[] = $staff_name; // ?にセットしたいデータが入っている変数を書く
  $data[] = $Staff_pass; // ?にセットしたいデータが入っている変数を書く
  $stmt->execute($data); // SQL文で指令を出すための命令文。この行は定型文としてこのまま書く
  // データベースから切断するプログラム
  $dbh = null;
  //結果を表示
  print $staff_name;
  print 'さんを追加しました。<br />';
}
catch (Exception $e)
{
  print 'ただいま障害により接続できません。';
  exit(); //強制終了の命令
}
?>
<a href="sataff_list.php">戻る</a>
</body>
</html>
 화면
  
                
                    
        
    
    
    
    
    
                
                
                
                
                    
                        
                            
                            
                            Reference
                            
                            이 문제에 관하여(PHP로 ID와 비밀번호 등록 화면, 확인 화면 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://qiita.com/harufuji/items/0482f37b55fb535a13b0
                            
                            
                            
                                텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                            
                            
                                
                                
                                 우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
</head>
<title>Hello shop</title>
<body>
  スタッフ追加<br />
  <br />
  <form method="post" action="staff_add_check.php"> <!--postメソッドで、staff_add_check.phpに情報を引き渡す-->
    スタッフ名を入力してください。<br />
    <input type="text" name="name" style="width:100px"><br /> <!--入力された値はtext型。値はnameと名づける-->
    パスワードを入力してください。<br />
    <input type="password" name="pass" style="width:100px"><br /> <!--入力された値はpassword型。アスタリスク表示される。値はpassと名づける。-->
    パスワードをもう一度入力してください。<br />
    <input type="password" name="pass2" style="width:100px"><br /> <!--入力された値はtext型。値はpass2と名づける-->
    <br />
    <input type="button" onclick="history.back()" value="戻る"> <!--戻るボタンをクリックすると、前の画面に遷移する-->
    <input type="submit" value="OK"> <!--OKボタンをクリックすると、staff_add_check.phpに遷移する-->
  </form>
</body>
</html>
출처
<!DOCTYPE htmel>
<html>
<head>
  <meta charset="utf-8">
</head>
<title>Hello shop</title>
<body>
<?php
$staff_name=$_POST['name']; //前の画面から入力値を受け取り、$staff_nameに格納
$staff_pass=$_POST['pass']; //前の画面から入力値を受け取り、$staff_passに格納
$staff_pass2=$_POST['pass2']; //前の画面から入力値を受け取り、$staff_pass2に格納
$staff_name=htmlspecialchars($staff_name,ENT_QUOTES,'UTF-8'); //文字列に変換(セキュリティ対策)
$staff_pass=htmlspecialchars($staff_pass,ENT_QUOTES,'UTF-8'); //文字列に変換(セキュリティ対策)
$staff_pass2=htmlspecialchars($staff_pass2,ENT_QUOTES,'UTF-8'); //文字列に変換(セキュリティ対策)
//$staff_nameがカラならエラーメッセージを表示する
//$staff_nameが入力されていれば、$staff_nameを表示する
if($staff_name==''){
  print 'スタッフ名が入力されていません。<br />';
}
else
{
  print 'スタッフ名:';
  print $staff_name;
  print '<br />';
}
//$staff_passがカラならエラーメッセージを表示する
if($staff_pass==''){
  print 'パスワードが入力されていません。<br />';
}
//$staff_pass、$staff_pass2が一致しなければ、エラーメッセージを表示する
if($staff_pass!=$staff_pass2){ //もしパスワード1とパスワード2の値が異なるなら
  print 'パスワードが一致しません。<br />';
}
//$staff_name、$staff_pass、$staff_pass2がカラなら、または、$staff_pass、$staff_pass2が一致しなければ、戻るボタンのみを表示する
//入力項目が適切なら、戻るボタンとOKボタンを表示する。
if($staff_name==''|| $staff_pass=='' || $staff_pass2=='' || $staff_pass!=$staff_pass2){
  print '<form>';
  print '<input type="button" onclick="history.back()" value="戻る">';
  print '<form>';
}
else
{
  $staff_pass=md5($staff_pass); //パスワードをMD5規約に則って32桁のランダム値に変換
  print '<form method="post" action="staff_add_done.php">';
  print '<input type="hidden" name="name" value="'.$staff_name.'">'; //'<input type="hidden" name="name" value="'と$staff_nameをドットで連結
  print '<input type="hidden" name="pass" value="'.$staff_pass.'">'; //hiddenにすることで画面に表示することなく次の画面に値を引き渡せる
  print '<br />';
  print '<input type="button" onclick="history.back()" value="戻る">';
  print '<input type="submit" value="OK">';
  print '</form>';
}
?>
</body>
</html>
화면

데이터베이스 연결
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
</head>
<title>Hello shop</title>
<body>
<?php
//tryはデータベースの接続エラー対策
try
{
  // POSTメソッドで前の画面の入力値を取得する
  $staff_name = $_POST['name'];
  $Staff_pass = $_POST['pass'];
  // セキュリティ対策入力値を文字列に変換
  $staff_name = htmlspecialchars($staff_name,ENT_QUOTES,'UTF-8');
  $Staff_pass = htmlspecialchars($Staff_pass,ENT_QUOTES,'UTF-8');
  //データベースに接続
  $dsn = 'mysql:dbname=shop;host=localhost;charset=utf8'; //shopはデータベース名を入力。''内は一切スペースを入れてはいけない
  $user = 'root'; //rootにはユーザ名を入力
  $password = '';  //''内にはパスワードを入力
  $dbh = new PDO($dsn, $user, $password);
  $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); //この行は定型文としてこのまま書く
  // SQL分を使ってレコードを追加
  $sql ='INSERT INTO mst_staff(name,password) VALUES (?,?)'; //'INSERT INTO mst_staff(name,password) VALUES (?,?)'を変数$sqlに格納する
  $stmt = $dbh->prepare($sql); // レコードを追加する準備。この行は定型文としてこのまま書く
  $data[] = $staff_name; // ?にセットしたいデータが入っている変数を書く
  $data[] = $Staff_pass; // ?にセットしたいデータが入っている変数を書く
  $stmt->execute($data); // SQL文で指令を出すための命令文。この行は定型文としてこのまま書く
  // データベースから切断するプログラム
  $dbh = null;
  //結果を表示
  print $staff_name;
  print 'さんを追加しました。<br />';
}
catch (Exception $e)
{
  print 'ただいま障害により接続できません。';
  exit(); //強制終了の命令
}
?>
<a href="sataff_list.php">戻る</a>
</body>
</html>
 화면
  
                
                    
        
    
    
    
    
    
                
                
                
                
                    
                        
                            
                            
                            Reference
                            
                            이 문제에 관하여(PHP로 ID와 비밀번호 등록 화면, 확인 화면 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://qiita.com/harufuji/items/0482f37b55fb535a13b0
                            
                            
                            
                                텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                            
                            
                                
                                
                                 우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
</head>
<title>Hello shop</title>
<body>
<?php
//tryはデータベースの接続エラー対策
try
{
  // POSTメソッドで前の画面の入力値を取得する
  $staff_name = $_POST['name'];
  $Staff_pass = $_POST['pass'];
  // セキュリティ対策入力値を文字列に変換
  $staff_name = htmlspecialchars($staff_name,ENT_QUOTES,'UTF-8');
  $Staff_pass = htmlspecialchars($Staff_pass,ENT_QUOTES,'UTF-8');
  //データベースに接続
  $dsn = 'mysql:dbname=shop;host=localhost;charset=utf8'; //shopはデータベース名を入力。''内は一切スペースを入れてはいけない
  $user = 'root'; //rootにはユーザ名を入力
  $password = '';  //''内にはパスワードを入力
  $dbh = new PDO($dsn, $user, $password);
  $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); //この行は定型文としてこのまま書く
  // SQL分を使ってレコードを追加
  $sql ='INSERT INTO mst_staff(name,password) VALUES (?,?)'; //'INSERT INTO mst_staff(name,password) VALUES (?,?)'を変数$sqlに格納する
  $stmt = $dbh->prepare($sql); // レコードを追加する準備。この行は定型文としてこのまま書く
  $data[] = $staff_name; // ?にセットしたいデータが入っている変数を書く
  $data[] = $Staff_pass; // ?にセットしたいデータが入っている変数を書く
  $stmt->execute($data); // SQL文で指令を出すための命令文。この行は定型文としてこのまま書く
  // データベースから切断するプログラム
  $dbh = null;
  //結果を表示
  print $staff_name;
  print 'さんを追加しました。<br />';
}
catch (Exception $e)
{
  print 'ただいま障害により接続できません。';
  exit(); //強制終了の命令
}
?>
<a href="sataff_list.php">戻る</a>
</body>
</html>
Reference
이 문제에 관하여(PHP로 ID와 비밀번호 등록 화면, 확인 화면 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/harufuji/items/0482f37b55fb535a13b0텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)