คำสัง SELECT ตรวจสอบว่ามีข้อมูลที่ซ้ำกันหรือไม่ ในฐานข้อมูลครับ
เปลี่ยน \ เป็น / ครับ ตรง ไฟล์ include
Date :
2013-12-07 22:33:51
By :
topza1412
Code (PHP)
$namehost = "localhost";
$userhost = "root";
$passhost = "1234";
$conn=mysql_connect("$namehost ","$userhost ","$passhost ") or die("NO CONNECT DB");
mysql_select_db("slines",$conn) or die("NO SELECTED DB");
mysql_query("set names utf8");
ปล. ลืมดู 555 ตามคุณ TOPPER บอกเลยครับ
ประวัติการแก้ไข 2013-12-07 22:36:35
Date :
2013-12-07 22:35:30
By :
somparn
ผมลอง ทำตาม พี่ทั้งสอง แล้ว ครับ ยังไม่ได้ครับ
Date :
2013-12-07 23:23:23
By :
beerburn
/ \ สองอันนี้ใช้ได้เหมือนกันครับ
ผมเพิ่ม
mysql_query("set names utf8");
แล้วก้อ or die (mysql_error()); ทุกตัวแล้ว ก้อไม่ขึ้น error น่ะครับ
แต่พอไป run หน้า index กด submit ขึ้น error
Date :
2013-12-07 23:26:50
By :
beerburn
อันนี้ โค๊ดเต็มครับ
Code (PHP)
session_start();
if($_POST){
$username = $_POST['username'];
$password = $_POST['password'];
$repassword = $_POST['repassword'];
$email = $_POST['email'];
$code = $_POST['code'];
$insert = "INSERT INTO member(username,password,email) VALUES ('$username','$password','$email');";
$select = "SELECT username FROM member WHERE username = '$username';";
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
if(!eregi("[a-z0-9]{5,10}",$username)){
$err = "ชื่อสมาชิกต้องมากว่า 5 ตัวอักษร";
}else if(!eregi("[a-z0-9]{5,10}",$password)){
$err = "รหัสผ่านต้องมากกว่า 5 ตัวอักษร";
}else if($password != $repassword){
$err = "รหัสผ่านไม่ตรงกัน";
}else if(empty($code)){
$err = "รหัสลับยังไม่ได้ระบุ";
}else if($_POST['code'] != $_SESSION['codea']){
$err = "รหัสลับไม่ตรงกัน";
}
//ทุกอย่างผ่าน แต่พอมาถึง ไม่ผ่านครับ
if($err == ""){
include("include/connect.php") or die (mysql_error());
$qrysl = mysql_query($select) or die (mysql_error());
$numrows = mysql_num_rows($qrysl) or die (mysql_error());
}else if($numrows == 0){
$err = "ไม่มีชื่อในระบบ";
}
}
Date :
2013-12-07 23:29:06
By :
beerburn
ได้แล้ว ครับ ผมวาง if else ผิด ขอบคุณพี่ๆๆมากครับ
Date :
2013-12-08 00:06:21
By :
beerburn
เขียนโปรแกรมให้นึกถึง injection ด้วยนะครับ
จะรับ $_POST['username']; แบบเพียวๆแบบนี้อันตรายมากๆ hack ได้สบายๆเลย
ผมเองเคยแนะนำมือใหม่ไปหลายคน ถึงแม้ว่าจะหัดเขียนก็ตาม ให้นึกถึงเรื่อง injection ไว้เป็นหลักด้วย
Date :
2013-12-08 00:19:28
By :
somparn
ขอบคุณครับ พี่ ที่ช่วยให้ข้อมูล ผมลองศึกษาแล้ว เป็นประโยชน์จริงๆๆ ครับ
Date :
2013-12-08 22:16:41
By :
beerburn
Load balance : Server 05