2016-04-01 3 views
0

フォームメソッド= "ポスト" 名前= "frmLogin" ID = "frmLogin"> あなたはユーザタイプ

::ユーザーログイン::

 <table width="100%" border="0" cellpadding="2" cellspacing="1" class="text"> 
     <tbody><tr align="center"> 
     <td colspan="3"></td> 
     </tr> 
     <tr class="text"> 
     <td width="100" align="right">User Name</td> 
     <td width="10" align="center">:</td> 
     <td><input name="UserName" type="text" id="UserName" size="30" maxlength="40"></td> 
     </tr> 
     <tr> 
     <td align="right">Password</td> 
     <td align="center">:</td> 
     <td><input name="Password" type="password" id="Password" size="30" maxlength="40"></td> 
     </tr> 
     <tr> 
     <td width="100" align="right">User Type </td> 
     <td width="10" align="center">:</td> 
     <td> 
     <label> 
      <select name="utype" class="box"> 
      <option>--- Select User --- </option> 
      <option value="admin"> Administrator </option> 
      <option value="customer">Manager </option> 
      <option value="market"> Marketing officer</option> 
      <option value="skeeper"> Store keeper</option> 
      <option value="sales"> Sales</option> 
      </select> 
      </label></td> 
     </tr> 
     <tr> 
     <td colspan="2"></td> 
     <td></td> 
     </tr> 
     <tr> 
     <td colspan="2"></td> 
     <td><div align="right">New Customer <a href="register.php">Register Here</a> </div></td> 
     </tr> 
     <tr> 
     <td colspan="3"><div align="right"><a href="forget-password.php">Forget Password</a> </div></td> 
     </tr> 
     <tr> 
     <td colspan="2"></td> 
     <td><input name="submit" type="submit" value=" Login Now " style="font-size:14px;color:#0066FF;padding:5px 8px;"></td> 
     </tr> 
     </tbody></table></td> 
    </tr> 
    </tbody></table> 
    <p></p> 
    </form> 
を使用してログインするために私を助けて

私のデータベースの情報は

-- phpMyAdmin SQL Dump 
-- version 3.2.0.1 
-- http://www.phpmyadmin.net 
-- 
-- Host: localhost 
-- Generation Time: Apr 01, 2016 at 02:31 PM 
-- Server version: 5.1.37 
-- PHP Version: 5.3.0 

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; 

-- 
-- Database: `online_sms` 
-- 

-- -------------------------------------------------------- 



-- 
-- Table structure for table `tbl_manager` 
-- 

CREATE TABLE IF NOT EXISTS `tbl_manager` (
    `Manager_id` int(32) NOT NULL AUTO_INCREMENT, 
    `Full name` varchar(32) NOT NULL, 
    `Username` varchar(32) NOT NULL, 
    `Password` char(32) NOT NULL, 
    `Email` varchar(32) NOT NULL, 
    `Address` text NOT NULL, 
    `Phonenumber` int(32) NOT NULL, 
    PRIMARY KEY (`Manager_id`) 
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; 

-- 
-- Dumping data for table `tbl_manager` 
-- 


-- -------------------------------------------------------- 

-- 
-- Table structure for table `tbl_marketing officer` 
-- 

CREATE TABLE IF NOT EXISTS `tbl_marketing officer` (
    `user_id` int(32) NOT NULL AUTO_INCREMENT, 
    `Full name` varchar(32) NOT NULL, 
    `Username` varchar(32) NOT NULL, 
    `Password` char(32) NOT NULL, 
    `Email` varchar(32) NOT NULL, 
    `Address` text NOT NULL, 
    `Phonenumber` int(32) NOT NULL, 
    PRIMARY KEY (`user_id`) 
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; 

-- 
-- Dumping data for table `tbl_marketing officer` 
-- 


-- -------------------------------------------------------- 

-- 
-- Table structure for table `tbl_sales` 
-- 

CREATE TABLE IF NOT EXISTS `tbl_sales` (
    `user_id` int(32) NOT NULL AUTO_INCREMENT, 
    `Full name` varchar(32) NOT NULL, 
    `Username` varchar(32) NOT NULL, 
    `Password` char(32) NOT NULL, 
    `Email` varchar(32) NOT NULL, 
    `Address` text NOT NULL, 
    `Phonenumber` int(32) NOT NULL, 
    PRIMARY KEY (`user_id`) 
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ; 

-- 
-- Dumping data for table `tbl_sales` 
-- 

INSERT INTO `tbl_sales` (`user_id`, `Full name`, `Username`, `Password`, `Email`, `Address`, `Phonenumber`) VALUES 
(1, 'Joshua njau', 'joshua', '1234', 'ahsja', 'vacvhasj', 717191001), 
(2, 'erica', 'erica', '1234567890', '', '', 0); 

-- -------------------------------------------------------- 

-- 
-- Table structure for table `tbl_store keeper` 
-- 

CREATE TABLE IF NOT EXISTS `tbl_store keeper` (
    `user_id` int(32) NOT NULL AUTO_INCREMENT, 
    `Full name` varchar(32) NOT NULL, 
    `Username` varchar(32) NOT NULL, 
    `Password` char(32) NOT NULL, 
    `Email` varchar(32) NOT NULL, 
    `Address` text NOT NULL, 
    `Phonenumber` int(32) NOT NULL, 
    PRIMARY KEY (`user_id`) 
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; 

-- 
-- Dumping data for table `tbl_store keeper` 
-- 
+4

あなたが質問をする必要があります:

は、接続して起動します。ダンプコードとデータベース構造だけです。あなたは何を持っているのですか? – JJJ

+0

ログイン用のコードがありません。 [ヘルプセクション> mcve](http://stackoverflow.com/help/mcve) – Spidey

+1

へようこそスタックオーバーフローへようこそ。あなたが求めていることをするには、あなたのフォームがPOST要求を出すPHPプログラムが必要です。それを行う方法については、多くのオンラインチュートリアルがあります。これらのチュートリアルで作業したら、より具体的な質問でここに戻ってくることになりました。 –

答えて

0

Fですまず、すべてのテーブルをloginテーブルに置き換えて、user_typeという列が含まれているテーブルに置き換えることができます。次にログインします。ログイン後、user_typeという値が得られます。管理者の場合は次の操作を行います。そうでない場合は以下の操作を行います。

ユーザー情報の新しいテーブルを作成できます。 user_infoと呼び、user_idphone_numberaddressなどの情報が含まれています。その後、

し、ログインするために、このPHP-PDOを使用します。

<?php 
error_reporting(E_ALL); 
if(isset($_POST['loginBtn'])){ 
    //session_start(); 
    $errmsg_arr = array(); 
    $errflag = false; 
    // configuration 
    $dbhost  = "localhost"; 
    $dbname  = "your_db"; 
    $dbuser  = "your_user"; 
    $dbpass  = "your_password"; 

    // database connection 
    $conn = new PDO("mysql:host=$dbhost;dbname=$dbname",$dbuser,$dbpass); 
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
    //$conn->exec("SET CHARACTER SET utf8mb4"); 
    // new data 

    $user = $_POST['UserName']; 
    $password = md5($_POST['Password']); 

    if($user == '') { 
     $errmsg_arr[] = 'You must enter your Username'; 
     $errflag = true; 
    } 
    if($password == '') { 
     $errmsg_arr[] = 'You must enter your Password'; 
     $errflag = true; 
    } 

    // query 

    $result = $conn->prepare("SELECT * FROM login WHERE username= :u AND password= :p"); 
    $result->bindParam(':u', $user); 
    $result->bindParam(':p', $password); 
    $result->execute(); 
    $rows = $result->fetch(PDO::FETCH_ASSOC); 

    if($result->rowCount() > 0) { 
     session_start(); 
     $_SESSION['username'] = $rows['username']; 
     $_SESSION['login_id'] = $rows['login_id']; 

     //Insert logging in date and time 
     $log_det = "INSERT INTO login_detail (id_logged, date_logged, time_logged) 
        Values (:id_logged, :date_logged, now())"; 
     $log_det_stmt = $conn->prepare($log_det); 
     $log_det_stmt->bindValue(":id_logged", $_SESSION['login_id']); 
     $log_det_stmt->bindValue(":date_logged", date("Y-m-d")); 
     $log_det_stmt->execute(); 
     header("location: ./pages/home.php"); 
    } 
    else{ 
     $errmsg_arr[] = 'Username and Password are not found'; 
     $errflag = true; 
    } 
    if($errflag) { 
     $_SESSION['ERRMSG_ARR'] = $errmsg_arr; 

     session_write_close(); 
     $sql_fail = "INSERT INTO login_attempt(username, password, date_now, time_now) 
        VALUES (:uf, :pf, :date_now, now())"; 
     $stmt_fail = $conn->prepare($sql_fail); 
     $stmt_fail->bindValue(":uf", $user); 
     $stmt_fail->bindValue(":pf", $password); 
     $stmt_fail->bindValue(":date_now", date("y-m-d")); 
     $exec_fail = $stmt_fail->execute(); 
     header("Location: index.php?res=inco"); 
     echo $e->getMessage(); 
     exit(); 

    } 
} 
?> 
関連する問題