ต่อจากบทความที่แล้ว?PHP Workshop ระบบสมาชิก แบบละเอียด ตอนที่ 3 บทความนี้เป็นการเขียนโปรแกรมจัดการผู้ใช้งานโดยมีระบบ แสดง เพิ่ม ลบ ข้อมูลสมาชิก มาเริ่มกันเลยครับ
– เปิด Netbeans IDE ขึ้นมาแล้วสร้างไฟล์ manager_user.php แล้วนำ code ด้านล่างไปวางใส่
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
<?php session_start(); if (isset($_SESSION['checkSign']) == 'itoffside' AND isset($_SESSION['active']) == 2) { /* * include file */ include 'config.php'; /* * set var */ $_SESSION['frmAction'] = md5('itoffside.com' . rand(1, 9999)); /* * logical programming&Database */ $meSQL = "SELECT * FROM member WHERE id != '{$_SESSION['id']}' "; $meQuery = mysql_query($meSQL); $meCount = mysql_num_rows($meQuery); ?> <html> <head> <meta charset="UTF-8"> <title>จัดการผู้ใช้งาน</title> </head> <body> <h3>หน้าแรกระบบจัดการสมาชิก</h3> <ul> <li><a href="mainpage.php">หน้าแรก</a></li> <?php if ($_SESSION['active'] == 2) { ?> <li><a href="manager_user.php">จัดการผู้ใช้งาน</a></li> <?php } ?> <li><a href="update_profile.php">แก้ไขข้อมูลส่วนตัว</a></li> <li><a href="signout.php">ออกจากระบบ</a></li> </ul> <hr/> <h4>จัดการผู้ใช้งาน</h4> <a href="manager_user-add.php"><<<<---เพิ่มผู้ใช้งานใหม่--->>>></a> <hr/> <?php if($meCount > 0) { ?> <h4>รายชื่อผู้ใช้งาน</h4> <table border="1" cellpadding="5"> <thead> <tr> <th>รหัสผู้ใช้</th> <th>ชื่อเข้าใช้</th> <th>ชื่อ - นามสกุล</th> <th>เพศ</th> <th>เบอร์โทร</th> <th>อีเมล์</th> <th>วันที่สร้าง</th> <th> </th> </tr> </thead> <tbody> <?php while ($meResult = mysql_fetch_assoc($meQuery)){ if($meResult['sex'] == 1){ $sex = 'ชาย'; }else{ $sex = 'หญิง'; } ?> <tr> <td><?php echo $meResult['id']; ?></td> <td><?php echo $meResult['username']; ?></td> <td><?php echo $meResult['firstname']; ?> <?php echo $meResult['lastname']; ?></td> <td><?php echo $sex ?></td> <td><?php echo $meResult['phone']; ?></td> <td><?php echo $meResult['email']; ?></td> <td><?php echo $meResult['create_date']; ?></td> <td><a href="manager_user-delete.php?id=<?php echo $meResult['id']; ?>">ลบผู้ใช้</a></td> </tr> <?php } ?> </tbody> </table> <?php }else{ echo "<h3>ไม่มีข้อมูลผู้ใช้งาน</h3>"; } ?> </body> </html> <?php mysql_close(); } else { echo "<meta charset=\"UTF-8\">"; echo "คุณไม่ได้เข้าสู่ระบบ กรุณาเข้าสู่ระบบก่อน!"; echo "<br/>"; echo "<a href='signin.php'>คลิกเพื่อเข้าสู่ระบบ</a>"; } ?> |
อธิบาย Code
สร้างหน้าจัดการข้อมูลผู้ใช้งานโดยแสดงรายการข้อมูลพร้อมปุ่ม เพิ่มและปุ่มลบข้อมูล
– สร้าไฟล์ manager_user-delete.php แล้วนำ Code ด้านล่างวางใส่
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
<?php session_start(); if (isset($_SESSION['checkSign']) == 'itoffside' AND isset($_SESSION['active'])==2) { /* * include file */ include 'config.php'; /* * set var */ $id = mysql_real_escape_string(trim($_GET['id'])); /* * unset var */ /* * logical programming&Database */ $meSQL = "DELETE FROM member "; $meSQL .= "WHERE id='{$id}' "; $meQuery = mysql_query($meSQL); if ($meQuery == TRUE) { echo "<meta charset=\"UTF-8\">"; echo "ลบข้อมูลสำเร็จ"; echo "<br/>"; echo "<a href='manager_user.php'>ไปหน้าจัดการข้อมูล</a>"; } else { echo "<meta charset=\"UTF-8\">"; echo "มีปัญหาการลบข้อมูล กรุณากลับไปบันทึกใหม่"; echo "<br/>"; echo "<a href='manager_user.php'>กลับไปหน้าเดิม</a>"; } mysql_close(); } else { echo "<meta charset=\"UTF-8\">"; echo "คุณไม่ได้เข้าสู่ระบบ กรุณาเข้าสู่ระบบก่อน!"; echo "<br/>"; echo "<a href='signin.php'>คลิกเพื่อเข้าสู่ระบบ</a>"; } ?> |
อธิบาย code
เมื่อมีการกดปุ่มลบข้อมูล ไฟล์นี้จะทำการลบข้อมูล
– สร้างไฟล์ manager_user-add.php แล้วนำ Code ด้านล่างไปวางใส่
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 |
<?php session_start(); if (isset($_SESSION['checkSign']) == 'itoffside' AND isset($_SESSION['active']) == 2) { /* * include file */ include 'config.php'; /* * set var */ $_SESSION['frmAction'] = md5('itoffside.com' . rand(1, 9999)); /* * logical programming&Database */ ?> <html> <head> <meta charset="UTF-8"> <title>เพิ่มผู้ใช้งานใหม่</title> </head> <body> <h3>เพิ่มผู้ใช้งาน</h3> <ul> <li><a href="mainpage.php">หน้าแรก</a></li> <?php if ($_SESSION['active'] == 2) { ?> <li><a href="manager_user.php">จัดการผู้ใช้งาน</a></li> <?php } ?> <li><a href="update_profile.php">แก้ไขข้อมูลส่วนตัว</a></li> <li><a href="signout.php">ออกจากระบบ</a></li> </ul> <hr/> <h4>ข้อมูลส่วนตัว</h4> <form name="manager_user-add-action" action="manager_user-add-action.php" method="POST"> <table border="1" cellpadding="5"> <tr> <td style="text-align: right;width: 200px; font-weight: bold">ชื่อผู้ใช้งาน</td> <td><input type="text" name="username" value="" size="40" /></td> </tr> <tr> <td style="text-align: right;width: 200px; font-weight: bold">รหัสผ่าน</td> <td><input type="password" name="password" value="" size="40"? /></td> </tr> <tr> <td style="text-align: right;width: 200px; font-weight: bold">ชื่อจริง</td> <td><input type="text" name="firstname" value="" size="40" /></td> </tr> <tr> <td style="text-align: right;width: 200px; font-weight: bold">นามสกุลจริง</td> <td><input type="text" name="lastname" value="" size="40" /></td> </tr> <tr> <td style="text-align: right;width: 200px; font-weight: bold">เพศ</td> <td> <input type="radio" name="sex" value="1" />ชาย | <input type="radio" name="sex" value="2"/>หญิง </td> </tr> <tr> <td style="text-align: right;width: 200px; font-weight: bold">เบอร์โทรศัพท์</td> <td><input type="text" name="phone" value="" size="40" /></td> </tr> <tr> <td style="text-align: right;width: 200px; font-weight: bold">อีเมล์</td> <td><input type="text" name="email" value="" size="40" /></td> </tr> <tr> <td style="text-align: right;width: 200px; font-weight: bold">ระดับผู้ใช้งาน</td> <td> <input type="radio" name="active" value="1" />ผู้ใช้ทั่วไป | <input type="radio" name="active" value="2"/>ผู้ดูแลระบบ </td> </tr> <tr> <td> </td> <td><input type="submit" name="submit" value="บันทึกข้อมูล" /></td> </tr> </table> <input type="hidden" name="frmAction" value="<?php echo $_SESSION['frmAction']; ?>" /> </form> </body> </html> <?php } else { echo "<meta charset=\"UTF-8\">"; echo "คุณไม่ได้เข้าสู่ระบบ กรุณาเข้าสู่ระบบก่อน!"; echo "<br/>"; echo "<a href='signin.php'>คลิกเพื่อเข้าสู่ระบบ</a>"; } ?> |
อธิบาย code
ไฟล์นี้เป็นการแสดงผลหน้าจอการเพิ่มสมาชิก และเมื่อมีการกดปุ่มบันทึกข้อมูล จะทำการเรียกไฟล์ manager_user-add-action.php เพื่อบันทึกเข้าสู่ฐานข้อมูล
– สร้างไฟล์ manager_user-add-action.php แล้วนำ code ด้านล่างไปใส่
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
<?php session_start(); if (isset($_SESSION['checkSign']) == 'itoffside' AND isset($_SESSION['active'])==2) { if (isset($_SESSION['frmAction']) == isset($_POST['frmAction'])) { /* * include file */ include 'config.php'; /* * set var */ $username = mysql_real_escape_string(trim($_POST['username'])); $password = mysql_real_escape_string(trim(md5($_POST['password']))); $firstname = mysql_real_escape_string(trim($_POST['firstname'])); $lastname = mysql_real_escape_string(trim($_POST['lastname'])); $sex = mysql_real_escape_string(trim($_POST['sex'])); $phone = mysql_real_escape_string(trim($_POST['phone'])); $email = mysql_real_escape_string(trim($_POST['email'])); $active = trim($_POST['active']); $create_date = date('Y-m-d H:i:s'); $modified_date = date('Y-m-d H:i:s'); /* * unset var */ unset($_SESSION['frmAction']); /* * logical programming&Database */ $meSQL = "INSERT INTO member "; $meSQL .= "(username,password,firstname,lastname,sex,phone,email,active,create_date,modified_date) VALUES "; $meSQL .= "('{$username}','{$password}','{$firstname}','{$lastname}','{$sex}','{$phone}','{$email}','{$active}',"; $meSQL .= "'{$create_date}','{$modified_date}') "; $meQuery = mysql_query($meSQL); if ($meQuery == TRUE) { echo "<meta charset=\"UTF-8\">"; echo "บันทึกข้อมูลสำเร็จ"; echo "<br/>"; echo "<a href='manager_user.php'>ไปหน้าจัดการข้อมูล</a>"; } else { echo "<meta charset=\"UTF-8\">"; echo "มีปัญหาการบันทึกข้อมูล กรุณากลับไปบันทึกใหม่"; echo "<br/>"; echo "<a href='manager_user.php'>กลับไปหน้าเดิม</a>"; } mysql_close(); } else { echo "<meta charset=\"UTF-8\">"; echo "มีข้อผิดพลาดระหว่าง Session!"; echo "<br/>"; echo "<a href='manager_user.php'>กลับไปหน้าเดิม</a>"; } } else { echo "<meta charset=\"UTF-8\">"; echo "คุณไม่ได้เข้าสู่ระบบ กรุณาเข้าสู่ระบบก่อน!"; echo "<br/>"; echo "<a href='signin.php'>คลิกเพื่อเข้าสู่ระบบ</a>"; } ?> |
อธิบาย code
เมื่อมีการบันทึกการเพิ่มผู้ใช้งาน ไฟล์นี้จะทำการ query ข้อมูลลงสู่ฐานข้อมูล
เสร็จแล้วเรียบร้อยกับระบบสมาชิกแบบง่ายๆ หากใครต้องการดู Source code แบบเต็มสามารถดาวน์โหลดได้ที่นี้เลยครับ
ไฟล์ระบบ คลิกเพื่อดาวน์โหลด
ไฟล์ฐานข้อมูล คลิกเพื่อดาวน์โหลด
หากว่าผู้อ่านมีข้อสงสัยหรือมีคำถามสามารถเขียน Comment ด้านล่างนี้ได้เลยครับ ผมจะตอบทุกคำถาม
รหัสผ่านนี่ เข้าใช้งานยังไงอะครับ
user
password คืออะไร คับ
รบกวนขอความรู้ครับ หากต้องการจัดข้อมูลที่ไม่เป็นระเบียบโดยใช้phpให้แยกเป็นคอร์ลัมพ์ให้เพื่อเก็บในดาต้าร์เบสมีวิธีไหมครับ(โดยไม่ต้องเขียนตารางในดาต้าร์เบส)
ผมลองใช้แล้วครับกับเครื่องจำลอง localhost.ใช้ได้ แต่กับ webhosting.ใช้ไม่ได้ครับ