GORAGOD.com

freelance, web developer, web designer, hosting, domain name

จะเขียนโค๊ดเพื่อบล็อกสมาชิกในเว็บต้องเขียนแบบไหนอย่างไรครับ

จะเขียนโค๊ดเพื่อบล็อกสมาชิกในเว็บต้องเขียนแบบไหนอย่างไรครับ
11 ก.พ. 2555 10 1,703

คำถามสั้นไปหน่อยนะครับ....



วิธีที่ดีที่สุดคือการป้องกันการ login ครับ ถ้าเขาไม่สามารถ login ได้ เขาก็จะถูกจำกัดความสามารถการใช้งานเว็บได้ครับ (ต้องออกแบบเว็บให้สอดคล้องด้วย) เช่น บอร์ดที่โพสต์โดยสมาชิกเท่านั้น



ส่วนวิธีอื่นๆมักไม่ค่อยได้ผลครับ เช่นการ บล๊อก ip หรือ session เพราะค่าเหล่านี้สามารถเปลี่ยนแปลง หรือจำลองได้ครับ ถ้าจะกัน ก็กันได้แค่ชั่วครู่ละครับ
#1

ปัญหาคือว่า ผมจะบล็อกสมาชิกในเว็บ โดยที่เราจะต้องเขียนโค๊ดเอง โดยที่ไม่ต้องไปยุ่งกับดาต้าเบสครับ



เงื่อนไขในการ login ผมเขียนแล้วและก็ทำงานได้แล้ว (ที่ทำงานได้เพราะไปเปลี่นในดาต้าเบสให้เป็นค่า 1 )

แต่ติดตรงที่จะเขียนโค๊ดเพื่อทำการเปลี่ยนแปลง

เช่น

กำหนด 0 ทำงานตามปกติ

กำหนด 1 คือการบล็อก



#2

อ้างอิงจาก ความคิดเห็น #2ปัญหาคือว่า ผมจะบล็อกสมาชิกในเว็บ โดยที่เราจะต้องเขียนโค๊ดเอง โดยที่ไม่ต้องไปยุ่งกับดาต้าเบสครับ



เงื่อนไขในการ login ผมเขียนแล้วและก็ทำงานได้แล้ว (ที่ทำงานได้เพราะไปเปลี่นในดาต้าเบสให้เป็นค่า 1 )

แต่ติดตรงที่จะเขียนโค๊ดเพื่อทำการเปลี่ยนแปลง

เช่น

กำหนด 0 ทำงานตามปกติ

กำหนด 1 คือการบล็อก


555+++ ส่วนที่ยากก็ทำแล้ว แต่ไหงส่วนที่ง่ายๆ ทำไม่ได้หว่า...



คำแนะนำคือ ปกติแล้ว เราต้องมีหน้าแก้ไขข้อมูลสมาชิกใช่มั้ยครับ (ที่ส่วนของแอดมิน) ก้แค่เพิ่มช่องกรอกข้อมูลอีกสักอัน เป็น บล๊อก หรือไม่บล๊อก แค่นั้นเองครับ คิดมากไปใยใให้ปวดหัว
#3

ผมเพิ่มข้อมูลแล้ว แต่พอ action ไปยังหน้าอัพเดท แต่มันกลับกลายเป็นลบข้อมูลในส่วนั้นออก

เช่น

แก้ไขให้เป็น 1 แล้วก็กดอัพเดทโดยผ่านหน้าโค๊ดตามด้านล่างนี้

<?

mysql_connect("localhost","root","1234");

mysql_select_db("life_style");

$sql="update member set status_block='$status_block' where username='$username' ";

$query = mysql_query($sql);

if($query)

{

  echo"0";

} else {

           echo "1";

         }

mysql_close();

?>





ก็เลยไม่รู้ว่ามันผิดตรงไหน



หมายเหตุ : ในการอัพเดทข้อมูลสมาชิกส่วนของแอดมิน ผมใช้หลักการเดียวกันกับการลบข้อมูลสมาชิกครับ
#4

$sql="update member set status_block='$status_block' where username='$username' ";

echo $sql; // debug





ลองเอา query ออกมาดูซิครับ ว่ามันเป็นอย่างที่ต้องการหรือเปล่า
#5

ผลลัพธ์ออกมา คือ

update member set status_block='' where username='1234'

เป็นอย่างที่ต้องการ

แต่ค่าที่ได้กลับ ว่าง ครับ
#6

ค่าว่างคือไม่มีค่าที่อัพเดทครับ ยังคงเป็นค่าเดิม
#7

555++



ดูจาก query ก็เห็นที่ผิดชัดเจนนี่ครับ status_block='' ตกลงมันจะเป็นค่าอะไรล่ะ หาให้เจอว่ามันหายไปไหนครับ
#8

ผมหาเจอแล้วครับ

ผมเขียนเงื่อนไขเพิ่้มเป็น 2 เงือนไข

ขอบคุณคุณมากครับ



ขอเรียกว่าอาจารย์เลยแล้วกัยครับ

ขอบคุณอาจราย์ระครับ



ผมไม่น่าไปคิดมากให้มันยากเลย ความจริงมันไม่ยากเลยนะครับ

ถ้าเราค่อยๆไล่โค๊ด
#9

อ้างอิงจาก ความคิดเห็น #9ผมหาเจอแล้วครับ

ผมเขียนเงื่อนไขเพิ่้มเป็น 2 เงือนไข

ขอบคุณคุณมากครับ



ขอเรียกว่าอาจารย์เลยแล้วกัยครับ

ขอบคุณอาจราย์ระครับ



ผมไม่น่าไปคิดมากให้มันยากเลย ความจริงมันไม่ยากเลยนะครับ

ถ้าเราค่อยๆไล่โค๊ด


ดูจากโค้ด ไม่เห็นการรับค่าตัวแปร และ ถ้า $status_block เป็น 1 กับ 0 สิ่งที่ควรทำคือ



$status_block = intval($_GET['status_block']); // หรือ $_POST
#10
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 2M
^