topwoilz โพสต์ 2011-10-16 01:35:04

ใครเซียน php-sql มาแก้ปัณหาให้หน่อยครับ

แก้ไขครั้งสุดท้ายโดย topwoilz เมื่อ 2011-10-16 01:37

ผมลองๆทำ login สมาชิกแบบใช้ฐานข้อมูลจากดิสคัสดูนะครับหัดๆเขียนตามฝรั่งดู จะลองนำไปใช้กับ vb.net
ปรากฎว่ามันหา Username เจอแต่ Password มันหาไม่ได้ครับ

พอ login รหัสผิดพลาดตลอด

ทำตาม 2 ลิงค์นี้น่ะครับhttp://www.youtube.com/watch?v=dvgcHTKLmsk&feature=relatedhttp://www.youtube.com/watch?v=LXV_L5JYZZw&feature=relatedfunctions.php<?php
ob_start();
session_start();

$connect = mysql_connect('localhost', 'ชื่อผู้ใช้', 'รหัสผ่าน');
$select_db = mysql_select_db('ชื่อฐานข้อมูล');

function loggedin()
{
        if (isset($_SESSION['username']))
        {
                $loggedin = TRUE;
                return $loggedin;
        }
}
?>login.php<?php
include "functions.php";
if (!loggedin())
{
if (isset($_POST['submit']))
{
        //if pressed
        $password = $_POST['password'];
        $username = mysql_real_escape_string($_POST['username']);
       
        if ($username&&$password)
        {
                $password = md5($password);
                $query = mysql_query("SELECT password, username FROM pre_common_member WHERE username='$username'");
                $numrows = mysql_num_rows($query);
                if ($numrows!=0)
                {
                        while ($fetch = mysql_fetch_assoc($query))
                        {
                                $db_user = $fetch['username'];
                                $db_pass = $fetch['password'];
                                if ($password==$db_pass)
                        {
                                $_SESSION['username'] = $username;
                                header("Location: index.php");
                                }
                                else echo "คุณมีรหัสผ่านที่ไม่ถูกต้อง!";       
                        }
                }
                else echo "ไม่พบชื่อผู้ใช้ของคุณ!";
        }
        else echo "คุณจำเป็นต้องใส่ทั้งชื่อผู้ใช้และรหัสผ่าน!";
}
}
else header("Location: index.php");
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=TIS-620" />
<title>เข้าสู่ระบบ</title>
</head>
<form action="login.php" method="POST">
<table>
<tr><td>Username:</td><td><input type="text" name="username" size="20"></td></tr>
<tr><td>Password:</td><td><input type="password" name="password" size="20"></td></tr>
<tr><td><input type="submit" name="submit" value="Login" /></td></tr>
</table>
</form>
</html>logout.php<?php
include "functions.php";
if (loggedin())
{
        session_destroy();
        header ("Location: index.php");
}
else header("Location: index.php");index.php<?php
include "functions.php";
if (loggedin())
        echo $_SEEION['username']." | <a href='logout.php'>Logout</a>";
else
        echo "<a href='login.php'>Login</a>";
?>member.php<?php
include "functions.php";
if (loggedin())
{
        echo $_SEEION['username']." | <a href='logout.php'>Logout</a>";
}
else header("Location: index.php");
>

princekoong โพสต์ 2011-10-16 02:15:25

เชื่อมต่อกับ discuz มันต่องใช้ api ของ ucenter ไม่ใช่รึ

http://ns5.truemoneyhost.com/~admin/document/

nokiatum โพสต์ 2011-10-16 04:42:22

ucenter + cookie ผมคิดเอาเอง

nvidia01 โพสต์ 2012-9-8 16:32:38

จะทำการดึงจากตารางโดยตรงก็ได้แต่ Discuz มีการเข้ารหัสผ่านเป็นพิเศษซึ่งไม่ใช่ MD5 แบบธรรมดาๆ ครับผมก็ไม่เคยรู้ด้วยว่ามันเข้าเป็นยังไงมันคงจะมี Salt ในการเข้าแน่ๆ ละฮะ

leonna โพสต์ 2012-12-13 13:36:38

กระทู้นี้ง่ายๆครับ รู้สึกมันจะเอาค่า password เข้ารหัส md5 2 ครั้งเเล้วรวมกับ ตัวแปลอีกตัวนึงใน uc เป็นค่าที่สุ่มมาตอนสมัครสมาชิกเลยเดียวผมจะเอาตัวอย่างให้ครับถ้าอยากได้ติดต่อมาผมเคยทำระบบเเลกเเต้มเครดิตอยากได้ตัวอย่างการเข้าระหัสซิบมาครับ ช่วงนี้หาตัวยากหน่อยถ้าไม่เจอที่นี่เข้าไปตามที่เว้บน่ะครับ sm926dz

022025562 โพสต์ 2013-4-9 16:45:10

member.php

<?php
include "functions.php";
if (loggedin())
{
      echo $_SEEION['username']." | <a href='logout.php'>Logout</a>";
}
else header("Location: index.php");
?>
หน้า: [1]
ดูในรูปแบบกติ: ใครเซียน php-sql มาแก้ปัณหาให้หน่อยครับ