|
|
|
ทำไมเขียน code check ไว้แล้ว ข้อมูลยังคงบันทึกลง database ด้วย |
|
|
|
|
|
|
|
Code (PHP)
<?php
$host = "127.0.0.1";
$user = "root";
$passwd = "123456";
$dbname = "iteq";
mysql_connect($host,$user,$passwd) or die("ติดต่อ Host ไม่ได้");
mysql_select_db($dbname) or die("ติดต่อฐานข้อมูลไม่ได้");
$result = "insert into `tb_member` ( `std_id` , `name` , `faculty` , `major` , `room`)
values ('$std_id', '$name', '$faculty', '$major', '$room')";
mysql_query("set NAMES tis620");
$sqlquery=mysql_db_query($dbname, $result);
$sql=mysql_query("select * from tb_member where std_id =$_POST[std_id] ");
$fetch = mysql_fetch_array($sql);
$checkadd = "select * from `tb_member` where std_id='$std_id' ";
$result = mysql_db_query($dbname, $checkadd);
$num=mysql_num_rows($result);
if ($num==1)
{
echo"<br>เพิ่มข้อมูลผู้ใช้ลงในฐานข้อมูลเรียบร้อยแล้ว ";
echo "<script language='javascript' >window.location = 'register_member.php?member_id=$fetch[member_id]'</script>";
}elseif($num>=1)
{
echo"<br>ชื่อผู้ใช้งานซ้ำ กรุณาใช้ชื่ออื่น ";
}else
{
};
mysql_close();
?>
ช่วยดูให้ทีนะครับ ว่าผิดพลาดตรงไหน
Tag : PHP
|
ประวัติการแก้ไข 2011-12-19 23:28:10
|
|
|
|
|
Date :
2011-12-19 23:12:04 |
By :
Spect2um |
View :
995 |
Reply :
6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มันก็ต้องลงเบสสิ เพราะคำสั่งเพิ่มข้อมูลมันอยู่ก่อนเช็ค
|
|
|
|
|
Date :
2011-12-19 23:35:14 |
By :
ozma |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ที่หมายถึงลงเบส คือข้อมูลมันซ้ำอะครับ ผมตั้งค่าให้มันตรวจสอบตัวเลขว่าซ้ำกันมั้ย แต่พอเวลาพิมซ้ำลงไป มันก็แสดงขึ้นว่า ชื่อผู้ใช้งานซ้ำ กรุณาใช้ชื่ออื่น แต่ลองเข้าไปดูในเบสแล้ว มันก็เป็นตัวเลขข้อมูลซ้ำเหมือนเดิม
|
|
|
|
|
Date :
2011-12-20 00:01:36 |
By :
Spect2um |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ซ้ำเพราะว่า INSERT ข้อมูลลงไปก่อนแล้วค่อยมาเช็ค มันก็เจอข้อมูลนั้น
|
|
|
|
|
Date :
2011-12-20 00:10:29 |
By :
yogolas |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วแบบนี้ควรแก้ยังไงครับ
|
|
|
|
|
Date :
2011-12-21 17:27:56 |
By :
Spect2um |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ย้าย select ขึ้นไปบนสุดก่อน insert ไงครับ
ถ้าเจอข้อมูล == 0 ก็ให้ insert เข้าใจว่าเป็นการบ้าน ลองฝึกเขียนดูนะครับ
|
|
|
|
|
Date :
2011-12-21 17:50:52 |
By :
evanesscaz |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
$host = "127.0.0.1";
$user = "root";
$passwd = "123456";
$dbname = "iteq";
mysql_connect($host,$user,$passwd) or die("ติดต่อ Host ไม่ได้");
mysql_select_db($dbname) or die("ติดต่อฐานข้อมูลไม่ได้");
$sql=mysql_query("select * from tb_member where std_id =$_POST[std_id] ");
$result = "insert into `tb_member` ( `std_id` , `name` , `faculty` , `major` , `room`)
values ('$std_id', '$name', '$faculty', '$major', '$room')";
mysql_query("set NAMES tis620");
$sqlquery=mysql_db_query($dbname, $result);
$fetch = mysql_fetch_array($sql);
$checkadd = "select * from `tb_member` where std_id='$std_id' ";
$result = mysql_db_query($dbname, $checkadd);
$num=mysql_num_rows($result);
if ($num==1)
{
echo"<br>เพิ่มข้อมูลผู้ใช้ลงในฐานข้อมูลเรียบร้อยแล้ว ";
echo "<script language='javascript' >window.location = 'register_member.php?member_id=$fetch[member_id]'</script>";
}elseif($num>=1)
{
echo"<br>ชื่อผู้ใช้งานซ้ำ กรุณาใช้ชื่ออื่น ";
}else
{
};
mysql_close();
?>
ก็ลองแล้วนะ มันก็ไม่ได้อะครับ ช่วยชี้แนะที
|
|
|
|
|
Date :
2011-12-23 12:12:35 |
By :
Spect2um |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|