วันจันทร์ที่ 29 ตุลาคม พ.ศ. 2561

โจทย์ ฝึกเขียน E-R Diagram

โรงเรียนแห่งหนึ่ง มีระบบดูแลช่วยเหลือนักเรียน โดยแบ่งการทำงานดังนี้ 
1. รองฯ ฝ่ายบริการกิจการนักเรียน เป็นผู้บริหารระดับสูงของระบบ 
2. แบ่งการดูแลนักเรียนเป็นคณะ ได้แก่ การเวก ชมพูพันทิพย์ สุพรรณิกา ราชาวดี สร้อยอินทนิน และ ปาริชาติ โดย แต่ละคณะจะมีครูหัวหณ้าคณะเป็นผู้ดูแล
3. นักเรียนแต่ละห้องเรียนจะต้องสังกัดคณะ และมีครูที่ปรึกษาดูแลอย่างน้อยห้องละ 2 คน 

ให้นักเรียนออกแบบฐานข้อมูล ที่รองรับข้อมูลการทำงานนี้ 

วันพุธที่ 17 ตุลาคม พ.ศ. 2561

mysql_fetch_array หรือ mysql_fetch_assoc เรียกครั้งที่ 2 ไม่ทำงาน

ผมมี Code ดังนี้ครับ 

<?php do { 
 do { ?>
<?php //echo $row_sdq_qusetion['q_no']; ?>
<?php //echo $row_sdq_qusetion['q_ark']; ?>
<?php //echo $row_sdq_qusetion['q_type']; ?>
<?php //echo $row_sdq_qusetion['not_true']; ?>
<?php //echo $row_sdq_qusetion['quite_true']; ?>
<?php //echo $row_sdq_qusetion['true']; ?>
<?php } while ($row_sdq_qusetion = mysql_fetch_array($sdq_qusetion)); ?>
<?php } while ($row_question_type = mysql_fetch_assoc($question_type)); ?>

คือการ ใช้ while ซ้อนกัน 2 รอบ ปรากฏว่า while ตัวในทำงานแค่รอบเดียว

วิธีแก้ไข ให้เพิ่ม mysql_data_seek ($result0);  เข้าไปใน while ที่มีการทำซ้ำ mysql_fetch_array หรือ mysql_fetch_assoc ดังตัวอย่าง
<?php do { 
 do { ?>
<?php //echo $row_sdq_qusetion['q_no']; ?>
<?php //echo $row_sdq_qusetion['q_ark']; ?>
<?php //echo $row_sdq_qusetion['q_type']; ?>
<?php //echo $row_sdq_qusetion['not_true']; ?>
<?php //echo $row_sdq_qusetion['quite_true']; ?>
<?php //echo $row_sdq_qusetion['true']; ?>
<?php } while ($row_sdq_qusetion = mysql_fetch_array($sdq_qusetion)); ?>
<? mysql_data_seek ($sdq_qusetion, 0); ?> // เพิ่มบรรทัดนี้ 
<?php } while ($row_question_type = mysql_fetch_assoc($question_type)); ?>

ก็จะสามารถทำซ้ำได้ครับ 

ความต้องการพื้นฐานของระบบ (System Requirements) ระบบทำความดีนักเรียน

 สมมุติให้นักเรียนเป็นประธานรักเรียน นักเรียนมีความต้องการจะส่งเสริมเพื่อนนักเรียนในการทำความดี จึงคิดจะพัฒนาระบบเก็บข้อมูลความดี เพื่อประเม...