 |
|
|
 |
 |
|
เอาโค้ดของคุณมาดูครับ 
|
 |
 |
 |
 |
Date :
2013-02-17 13:27:07 |
By :
arm8957 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ตอบความคิดเห็นที่ : 2 เขียนโดย : mangkunzo เมื่อวันที่ 2013-02-17 13:56:27
รายละเอียดของการตอบ ::
ขอโทดทีค่ะพี่ ที่หนูไม่ได้บอกพี่ พอดีอันนี้หนูลองทำเหมือนเค้าเปี้ยบเลยค่ะ ฐานข้อมูลก้อของเค้าเลย แต่อันโน้นหนู้เปลี่ยนนั่นเปลี่ยนนี้เลย error แต่อันนี้ไม่ error แต่มันขึ้น Username and Password Incorrect! ตลอดเลยหลังจากที่เราป้อน username password ใส่ถูกใส่ผิดก้อขึ้นเหมือนกัน
Code (ตาราง)
CREATE TABLE `member` (
`UserID` int(3) unsigned zerofill NOT NULL auto_increment,
`Username` varchar(20) NOT NULL,
`Password` varchar(20) NOT NULL,
`Name` varchar(100) NOT NULL,
`Status` enum('ADMIN','USER') NOT NULL default 'USER',
PRIMARY KEY (`UserID`),
UNIQUE KEY `Username` (`Username`)
) ENGINE=MyISAM AUTO_INCREMENT=3 ;
--
-- Dumping data for table `member`
--
INSERT INTO `member` VALUES (001, 'win', 'win123', 'Weerachai Nukitram', 'USER');
INSERT INTO `member` VALUES (002, 'chai', 'chai123', 'Surachai Sirisart', 'ADMIN');
หน้า login.php
Code (PHP)
<html>
<head>
<title>ThaiCreate.Com Tutorials</title>
</head>
<body>
<form name="form1" method="post" action="check_login.php">
Login<br>
<table border="1" style="width: 300px">
<tbody>
<tr>
<td> Username</td>
<td>
<input name="txtUsername" type="text" id="txtUsername">
</td>
</tr>
<tr>
<td> Password</td>
<td><input name="txtPassword" type="password" id="txtPassword">
</td>
</tr>
</tbody>
</table>
<br>
<input type="submit" name="Submit" value="Login">
</form>
</body>
</html>
หน้า check_login.php
Code (PHP)
<?
session_start();
mysql_connect("localhost","root","root");
mysql_select_db("mydatabase");
$strSQL = "SELECT * FROM member WHERE Username = '".trim($_POST['txtUsername'])."'
and Password = '".trim($_POST['txtPassword'])."'";
$objQuery = mysql_query($strSQL);
$objResult = mysql_fetch_array($objQuery);
if(!$objResult)
{
echo "Username and Password Incorrect!";
}
else
{
$_SESSION["UserID"] = $objResult["UserID"];
$_SESSION["Status"] = $objResult["Status"];
session_write_close();
if($objResult["Status"] == "ADMIN")
{
header("location:admin_page.php");
}
else
{
header("location:user_page.php");
}
}
mysql_close();
?>
|
 |
 |
 |
 |
Date :
2013-02-17 14:06:40 |
By :
nongtoom |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ลองใส่ mysql_query("SET NAMES UTF8"); หรือยังครับ เผื่อคุณใส่ภาษาไทย
|
 |
 |
 |
 |
Date :
2013-02-17 14:12:52 |
By :
Ex-[S]i[L]e[N]t |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (PHP)
<?
session_start();
echo $Username=trim($_POST['Username']);
echo $Password=trim($_POST[Password]);
mysql_connect("localhost","root","root");
mysql_select_db("mydatabase");
$strSQL = "SELECT * FROM member WHERE Username = '".$Username."'
and Password = '".$Password."'";
$objQuery = mysql_query($strSQL);
echo $num_rows=mysql_num_rows($objQuery);
$objResult = mysql_fetch_array($objQuery);
if($num_rows==1)
{
$_SESSION["UserID"] = $objResult["UserID"];
$_SESSION["Status"] = $objResult["Status"];
}
else
{
echo "Username and Password Incorrect!";
}
mysql_close();
?>
ลองดู num_row หาจำนวนถูกมั้ย และสามารถสร้าง session ได้มั้ย
|
 |
 |
 |
 |
Date :
2013-02-17 14:29:34 |
By :
Ex-[S]i[L]e[N]t |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
คุณได้ INSERT ข้อมูลเข้าไปแล้วใช่มั้ยครับ
|
ประวัติการแก้ไข 2013-02-17 14:37:40
 |
 |
 |
 |
Date :
2013-02-17 14:34:14 |
By :
cookiephp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ถามย้ำ Code เหมือนเป๊ะ ไม่ได้แก้ไข อะไรเลยใช่ไหม
แล้วมัน ขึ้นคำว่า
Username and Password Incorrect!
ถูกต้องใช้ไหมครับ ที่ถามอีกเพื่อความแน่ใจ
งั้นมี ข้อแนะนำ ลองตรวจดูนะครับ
1. ลอง echo ค่าตัวแปร ทั้งหมดออกมาดู ว่ามันเป็นจริงอย่างที่เราคิดไหม
2. ตอนทดสอบพิมพ์ username / password มันตรงกับ database แน่แล้วนะครับ ลองเช็คใน DB มันตัวอักษรเหมือนไหม มีช่วงว่า (เคาะ SpaceBar) อยู่หรือเปล่า
3. ถ้าเป็นแบบนี้ ค่าตัวใดตัวนึงมันไม่เป็นอย่างที่คิด ต้องไล่ Syntax ใหม่หมดดีกว่าครับ
ถ้ายังไม่ผ่าน รบกวนเอา code ทั้งหมด มาโพสต์ อย่าลืมใส่แท็ก PHP คลิกที่รูป PHP ด้านบน แล้วมันจะได้แท็ก เอา Code ไปวาง มันจะมีสีขึ้นเวลาโพสต์ ด้วยจะได้อ่านง่าย
1. ดึง sql จาก DB ออกมาใหม่
2. เอา Code ทั้ง 2 หน้ามาโพสต์...
ถ้าไม่ได้จริง ๆ ให้ตามมาเตะเลย 555+
Edit ล่าสุด 15.05 น. เอา Code ไป test แล้วไม่มีปัญหาอะไรเบยง๊าฟฟฟฟฟฟฟ
|
ประวัติการแก้ไข 2013-02-17 14:48:18 2013-02-17 14:52:00 2013-02-17 15:05:40
 |
 |
 |
 |
Date :
2013-02-17 14:45:16 |
By :
apisitp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ออกแนว sql injection hack ใช่มั้ยครับ
|
 |
 |
 |
 |
Date :
2013-02-17 15:24:09 |
By :
Ex-[S]i[L]e[N]t |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
แล้วจขกท.ก็ไม่มาตอบสักที ว่ายังไง
|
 |
 |
 |
 |
Date :
2013-02-17 15:32:23 |
By :
cookiephp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ตอบความคิดเห็นที่ : 8 เขียนโดย : apisitp เมื่อวันที่ 2013-02-17 14:45:16
รายละเอียดของการตอบ ::
เหมือนเป๊ะๆเลยค่ะพี่ต้นกล้า เปลี่ยนแค่ mysql_connect("localhost","root","1234"); mysql_select_db("abj"); ตรงนี้เองค่ะ
Code (PHP)
Code (SQL)
--
-- โครงสร้างตาราง `member`
--
CREATE TABLE `member` (
`UserID` int(3) unsigned zerofill NOT NULL auto_increment,
`Username` varchar(20) NOT NULL,
`Password` varchar(20) NOT NULL,
`Name` varchar(100) NOT NULL,
`Status` enum('ADMIN','USER') NOT NULL default 'USER',
PRIMARY KEY (`UserID`),
UNIQUE KEY `Username` (`Username`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;
--
-- dump ตาราง `member`
--
INSERT INTO `member` VALUES (001, 'win', 'win123', 'Weerachai Nukitram', 'USER');
INSERT INTO `member` VALUES (002, 'chai', 'chai123', 'Surachai Sirisart', 'ADMIN');
หน้า login.php
<html>
<head>
<title>ThaiCreate.Com Tutorials</title>
</head>
<body>
<form name="form1" method="post" action="check_login.php">
Login<br>
<table border="1" style="width: 300px">
<tbody>
<tr>
<td> Username</td>
<td>
<input name="txtUsername" type="text" id="txtUsername">
</td>
</tr>
<tr>
<td> Password</td>
<td><input name="txtPassword" type="password" id="txtPassword">
</td>
</tr>
</tbody>
</table>
<br>
<input type="submit" name="Submit" value="Login">
</form>
</body>
</html>
หน้า check_login.php
Code (PHP)
<?
session_start();
mysql_connect("localhost","root","1234");
mysql_select_db("abj");
$strSQL = "SELECT * FROM member WHERE Username = '".trim($_POST['txtUsername'])."'
and Password = '".trim($_POST['txtPassword'])."'";
$objQuery = mysql_query($strSQL);
$objResult = mysql_fetch_array($objQuery);
if(!$objResult)
{
echo "Username and Password Incorrect!";
}
else
{
$_SESSION["UserID"] = $objResult["UserID"];
$_SESSION["Status"] = $objResult["Status"];
session_write_close();
if($objResult["Status"] == "ADMIN")
{
header("location:admin_page.php");
}
else
{
header("location:user_page.php");
}
}
mysql_close();
?>
แล้วก้อหนูลอง echo ค่าออกมาแล้วในหน้า check_login.php มันไม่ขึ้นไรเลยค่ะ รบกวนพี่ด้วยนะค่ะ
|
 |
 |
 |
 |
Date :
2013-02-17 15:37:39 |
By :
nongtoom |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
หน้า check_login.php
ตรงบรรทัดที่ 11 echo "Username and Password Incorrect!";
เพิ่มโค้ดหลังบรรทัดนั้นตามนี้
echo mysql_error();
echo "<pre>";
print_r($_POST);
echo $strSQL;
ลองรันอีกที แล้วช่วยบอกว่ามันขึ้นว่าอะไรครับ
|
 |
 |
 |
 |
Date :
2013-02-17 16:00:38 |
By :
cookiephp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ได้แล้วค่ะ คือหนูลบใหม่อันเก่าหมดแล้วทำใหม่ค่ะ ก้อเลยได้ ขอบคุณทุกคนมากกกกกกกกกกกกกกกค่ะ
|
 |
 |
 |
 |
Date :
2013-02-17 21:07:55 |
By :
nongtoom |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|

|
 |
 |
 |
 |
Date :
2013-02-18 06:02:44 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
...
|
ประวัติการแก้ไข 2013-02-20 10:40:38
 |
 |
 |
 |
Date :
2013-02-19 15:17:57 |
By :
cookiephp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ไม่เป็นไรครับ มีถูกใจบ้างไม่ถูกใจบ้างอย่าไปถือสาเลยครับ เราเป็นผู้ใหญ่ก็วางเฉยเพียงแต่น้องเค้าเข้าใจเราผิดเท่านั้นเอง
|
 |
 |
 |
 |
Date :
2013-02-19 16:56:05 |
By :
sakuraei |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ถ้าอย่างนั้นก็ลบที่น้องเค้าเขียนมาเถอะครับถ้ามึคนมาอ่านกระทู้นี้ภายหลัง จะรู้สึกไม่ค่อยสบายใจ 
|
 |
 |
 |
 |
Date :
2013-02-19 17:11:06 |
By :
sakuraei |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ผมจัดการเองครับ
|
ประวัติการแก้ไข 2013-02-19 17:14:43
 |
 |
 |
 |
Date :
2013-02-19 17:13:33 |
By :
Ex-[S]i[L]e[N]t |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
วันนี้วุ่นทั้งวันเลย กำลังกังวลเรื่อง Server อยู่ครับ 
|
 |
 |
 |
 |
Date :
2013-02-19 17:19:16 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ใจเย็นๆ 
|
 |
 |
 |
 |
Date :
2013-02-19 23:59:10 |
By :
apisitp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอโทษทุกคนด้วยล่ะกันครับ
หากที่ผมทำไปมันไม่ดี มันก็ไม่ดีน่ะแหละผมทราบ แต่ผมไม่ชอบจริงๆ มันอดไม่ได้
เพราะหากสักวันอะไรที่ผมตอบ ความคิดที่ผมคิด ข้อความที่ผมเขียนเองคิดเองทุกตัวอักษร
มันถูกคนอื่นเอาไปอ้างเป็นของตัวเอง โดยไม่ให้เครดิต มารู้ทีหลังมันก็คงเจ็บใจอ่ะครับ
ขอโทษที่จริงจังกับเรื่องนี้มากไปหน่อย
แต่ก็ดีครับ ที่ได้รู้ว่ามีคนที่ไม่ชอบผมอยู่
ถามจริงๆ ผมดูเป็นคนแย่ ไม่น่าคบขนาดนั้นเลยเหรอครับ
ผมดูถูกคนเหรอครับ
น่าน้อยใจนะครับ เพราะผมว่าหลายๆ คนก็รู้ว่าผมตอบคำถามยังไง
ผมเก่งหรือเปล่าผมไม่รู้หรอก
แต่ผมตอบเต็มที่ แนะนำตั้งแต่พื้นฐาน อธิบายเต็มที่
เพราะผมทุ่มเทแบบนั้น บางทีก็ทำให้ผมแบบรำคาญคนที่ไม่พยายาม ทั้งๆ ที่ช่วยมากแล้ว
เลยอาจจะมีประชดประชันหรือต่อว่าไปบ้าง ผมขอโทษ
ที่ผมทำไปทั้งหมดผมไม่น่าคบใช่มั้ยครับ
|
 |
 |
 |
 |
Date :
2013-02-20 10:40:01 |
By :
cookiephp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ผมก็ขอลบส่วนของผมเหมือนกัน
ถือว่าไม่มีอะไรเกิดขึ้นแล้วกันครับ
ขอโทษทุกคนอีกครั้งครับ
|
 |
 |
 |
 |
Date :
2013-02-20 10:41:29 |
By :
cookiephp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
แต่ขอถามคุณแฟนคลับหน่อย ที่ดูผมมาสองอาทิตย์เนี่ย
ที่ผมต่อว่าคนอื่น หรือปากเสีย กับที่ผมตอบ อันไหนมันเยอะกว่ากันครับ อย่างไหนมีประโยชน์กว่ากัน
เอาจริงๆ จนถึงตอนนี้ ผมไม่เข้าใจว่าผมดูถูกคนตรงไหน
ถ้ามันเพราะเห็นผมเคยต่อว่าคนที่ไม่พยายาม แล้วเอามาตัดสินว่าผมดูถูกคน มันไม่เกินไปหน่อยเหรอครับ
พูดมาได้เลยครับ ถ้าคิดว่าผมไม่ควรมาตอบที่นี่ ไม่อยากได้ เพราะผมมันชอบดูถูกคน
ผมก็จะไม่มาให้เห็นอีกครับ ผมไม่หน้าด้านหรอก
ผมไม่สบายใจเหมือนกันหากเวลาผมตอบ แล้วจะมีคนคอยหาว่าผมดูถูกคน ทั้งๆ ที่ผมไม่เคยมีความคิดแบบนั้นเลยในหัว
|
 |
 |
 |
 |
Date :
2013-02-20 10:51:19 |
By :
cookiephp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ใจเย็น ๆ กันครับ 
|
 |
 |
 |
 |
Date :
2013-02-20 10:56:51 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ใจเย็น ๆครับ
ใช้สติ อย่าเอาอารมณ์มาเป็นที่ตั้ง เขาไม่รู้จักตัวตนของเรา เท่ากับเราหรอก
ห้ามคนอื่นพูดเราไม่ได้ เราก็ห้ามเราดูได้ ก็ห้ามเราเองแหละดีที่สุด
เรื่องบางเรื่อง .. มันหยุมหยิม ก็อย่าเอามาคิดให้รกหมองดีกว่าครับ เอาเวลาเครียด ไปหัดเล่น Extjs แล้วมาเขียนบทความสอนดีกว่าครับ
คริ คริ 

|
 |
 |
 |
 |
Date :
2013-02-20 11:14:19 |
By :
deawx |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ขอปิดกระทู้น่ะครับ
ปล. ท่านใดอยากให้ลบอะไรก็ PM มาน่ะครับ จะได้สบายใจ
|
 |
 |
 |
 |
Date :
2013-02-20 11:18:18 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|