|
|
|
จะเขียนโค๊ดยังไง แบบว่า select ครั้งเดียว แล้วมาแบ่งกลุ่มการแสดงผล ออกเป็นตารางแต่ละแแผนก |
|
|
|
|
|
|
|
group by
|
|
|
|
|
Date :
2009-10-19 12:23:22 |
By :
pjgunner |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- แก้แบบวิธีหนึ่งง่ายๆ
$sql="select * from tb_members where member_conf='1' order by member_depart ASC";
- แก้แบบวิธีที่สอง เรียงสองขั้น เรียงตามกลุ่ม แล้วเรียงตาม number_id
Code (PHP)
<?
function mailList(){
$i=1;
echo "<table id='mytable' width='80%' cellpadding='3' cellspacing='3' border='0'>";
echo "<tr class=\"tr_head\">";
echo "<td align='center'>ID</td>";
echo "<td align='center'>Name</td>";
echo "<td align='center'>Nickname</td>";
echo "<td align='center'>Email</td>";
echo "<td align='center'>Mobile</td>";
echo "</tr>";
$sql="select * from tb_members where member_conf group by member_depart order by member_depart ";
$result2=mysql_query($sql) or die ($sql.mysql_error());
while($rs =mysql_fetch_array($result2)){
$sql="select * from tb_members where member_conf='1' and member_depart='$rs[member_depart]' order by number_id ASC";
$result=mysql_query($sql) or die ($sql.mysql_error());
while($rows=mysql_fetch_array($result)){
$id=$rows["member_id"];
$name=$rows["member_name"];
$nick=$rows["member_nickname"];
$mobile=$rows["member_mobile"];
$mail=$rows["member_email"];
$depart=$rows["member_depart"];
if($i%2=='0'){
$color='#f3f1da';
} else{
$color='#ffffff';
}
if($depart != "ETC"){
if($depart== "Designer"){
echo "<tr bgcolor=\"$color\">";
echo "<td align=\"center\">$i</td>";
echo "<td>$name</td>";
echo "<td align=\"center\">$nick</td>";
echo "<td>$mail</td>";
echo "<td>$mobile</td>";
echo "</tr>";
$i++; }
}// End if ETC
}// end while 2
}//end while1
echo "</table>";
}
?>
|
|
|
|
|
Date :
2009-10-19 12:28:20 |
By :
xbeginner01 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ใช่แบบนี้ค่ะ แบบนี้มันรวมกันในตารางเดียว
คือว่าให้มันแยกเป็น แผนก โดยแยกออกเป็น ตาราง
เช่น Admin มีกี่คน ก็ 1 ตาราง -----------ชื่อ-เมล์-เบอร์โทร
Designer มีกี่คน ก็ 1 ตาราง----------ชื่อ-เมล์-เบอร์โทร
|
|
|
|
|
Date :
2009-10-19 13:11:59 |
By :
Avrill |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
group by + order by group + php เขียนเช็คว่าเปลี่ยน group หรือยัง
|
|
|
|
|
Date :
2009-10-19 13:31:50 |
By :
plakrim |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?
function mailList(){
$i=1;
$t=1;
$sql="select*from tb_members where member_conf='1' order by member_depart ASC ";
$result=mysql_query($sql);
$departOld="";
while($rows=mysql_fetch_array($result)){
$id=$rows["member_id"];
$name=$rows["member_name"];
$nick=$rows["member_nickname"];
$mobile=$rows["member_mobile"];
$mail=$rows["member_email"];
$depart=$rows["member_depart"];
$departNew =$depart;
if($departNew!=$departOld){
$t=1;
echo "<br><br>";
$departOld=$departNew;
}
if($t==1 ){
echo "<table id='mytable' width='80%' cellpadding='3' cellspacing='3' border='0'>";
echo "<tr class=\"tr_head\">";
echo "<td align='center'>ID</td>";
echo "<td align='center'>Name</td>";
echo "<td align='center'>Nickname</td>";
echo "<td align='center'>Email</td>";
echo "<td align='center'>Mobile</td>";
echo "</tr>";
}
$t++;
if($i%2=='0'){ $color='#f3f1da'; } else{ $color='#ffffff'; }
// if($depart != "ETC"){
// if($depart== "Designer"){
echo "<tr bgcolor=\"$color\">";
echo "<td align=\"center\">$i</td>";
echo "<td>$name</td>";
echo "<td align=\"center\">$nick</td>";
echo "<td>$mail</td>";
echo "<td>$mobile</td>";
echo "</tr>";
$i++;
// }
// }// End if ETC
}
echo "</table>";
}
?>
อะครับ ตรงใจมั้ย
|
|
|
|
|
Date :
2009-10-19 13:42:30 |
By :
Sek-Artdrinker |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใช่เลยค่ะ คุณ Sek-Artdrinke
ขอบคุณมากๆค่ะ ขอบคุณทุกๆท่านนะค่ะ
+1 ทุกท่านเลย 55
|
|
|
|
|
Date :
2009-10-19 14:00:41 |
By :
Avrill |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ยังมีอีกนิดค่ะ ช่วยหน่อยค่ะ
ถ้าจะเพิ่มชื่อแผนกให้ตาราง เพิ่มด้านบนของตารางทำไงดี
|
|
|
|
|
Date :
2009-10-19 14:31:11 |
By :
Avrill |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
if($t==1 ){
echo $depart."<br>";
echo "<table id='mytable' width='80%' cellpadding='3' cellspacing='3' border='0'>";
echo "<tr class=\"tr_head\">";
echo "<td align='center'>ID</td>";
echo "<td align='center'>Name</td>";
echo "<td align='center'>Nickname</td>";
echo "<td align='center'>Email</td>";
echo "<td align='center'>Mobile</td>";
echo "</tr>";
}
|
|
|
|
|
Date :
2009-10-19 14:53:19 |
By :
Sek-Artdrinker |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
if($t==1 ){
echo $depart."<br>";
echo "<table id='mytable' width='80%' cellpadding='3' cellspacing='3' border='0'>";
echo "<tr class=\"tr_head\">";
echo "<td align='center'>ID</td>";
echo "<td align='center'>Name</td>";
echo "<td align='center'>Nickname</td>";
echo "<td align='center'>Email</td>";
echo "<td align='center'>Mobile</td>";
echo "</tr>";
}
แบบนี้ลองแล้วมันแสดงผลเพี้ยนๆ
เลยเอา <table> ไปไว้บน if($t==1 ){
แบบนี้ได้ค่ะ แต่ งงๆ echo $depart."<br>"; ที่มันไปแทรกอยู่ตรงนั้น
Code (PHP)
echo "<table id='mytable' width='80%' cellpadding='3' cellspacing='3' border='0'>";
if($t==1 ){
echo $depart."<br>";
echo "<tr class=\"tr_head\">";
echo "<td align='center'>ID</td>";
echo "<td align='center'>Name</td>";
echo "<td align='center'>Nickname</td>";
echo "<td align='center'>Email</td>";
echo "<td align='center'>Mobile</td>";
echo "</tr>";
}
|
|
|
|
|
Date :
2009-10-19 15:25:10 |
By :
Avrill |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?
function mailList(){
$i=1;
$t=1;
$sql="select*from tb_members where member_conf='1' order by member_depart ASC ";
$result=mysql_query($sql);
$departOld="";
while($rows=mysql_fetch_array($result)){
$id=$rows["member_id"];
$name=$rows["member_name"];
$nick=$rows["member_nickname"];
$mobile=$rows["member_mobile"];
$mail=$rows["member_email"];
$depart=$rows["member_depart"];
$departNew =$depart;
if($departNew!=$departOld){
$t=1;
echo "<br><br>";
if($departOld!=""){
echo "</table>";
}
$departOld=$departNew;
}
if($t==1 ){
echo "<table id='mytable' width='80%' cellpadding='3' cellspacing='3' border='0'>";
echo "<tr class=\"tr_head\">";
echo "<td align='center'>ID</td>";
echo "<td align='center'>Name</td>";
echo "<td align='center'>Nickname</td>";
echo "<td align='center'>Email</td>";
echo "<td align='center'>Mobile</td>";
echo "</tr>";
}
$t++;
if($i%2=='0'){ $color='#f3f1da'; } else{ $color='#ffffff'; }
echo "<tr bgcolor=\"$color\">";
echo "<td align=\"center\">$i</td>";
echo "<td>$name</td>";
echo "<td align=\"center\">$nick</td>";
echo "<td>$mail</td>";
echo "<td>$mobile</td>";
echo "</tr>";
$i++;
}
}
?>
งง ตรงใหนมั้ยครับ
|
|
|
|
|
Date :
2009-10-19 15:39:39 |
By :
Sek-Artdrinker |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ได้ค่ะ ตารางเละเลย
แต่ถ้าแบบนี้ได้นะ งงมากมาย
Code (PHP)
<?
function mailList(){
$i=1;
$t=1;
$sql="select*from tb_members where member_conf='1' order by member_depart ASC ";
$result=mysql_query($sql);
$departOld="";
while($rows=mysql_fetch_array($result)){
$id=$rows["member_id"];
$name=$rows["member_name"];
$nick=$rows["member_nickname"];
$mobile=$rows["member_mobile"];
$mail=$rows["member_email"];
$depart=$rows["member_depart"];
$departNew =$depart;
if($departNew!=$departOld){
$t=1;
echo "<br><br>";
$departOld=$departNew;
}
echo "<table id='mytable' width='80%' cellpadding='3' cellspacing='3' border='0'>";
if($t==1 ){
echo "<tr class=\"tr_head\">";
echo "<td align='center'>ID</td>";
echo "<td align='center'>Name</td>";
echo "<td align='center'>Nickname</td>";
echo "<td align='center'>Email</td>";
echo "<td align='center'>Mobile</td>";
echo "</tr>";
}
$t++;
if($i%2=='0'){ $color='#f3f1da'; } else{ $color='#ffffff'; }
echo "<tr bgcolor=\"$color\">";
echo "<td align=\"center\">$i</td>";
echo "<td>$name</td>";
echo "<td align=\"center\">$nick</td>";
echo "<td>$mail</td>";
echo "<td>$mobile</td>";
echo "</tr>";
$i++;
echo "</table>";
}
}
?>
|
|
|
|
|
Date :
2009-10-19 15:53:48 |
By :
Avrill |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าเราจะกำหนดให้ สมาชิกแต่ละแผนกเรียงลำดับ ตาม number_id ได้ใหมค่ะ
เพราะว่าอยากเอาหัวหน้าแผนกหรือผู้ผู้อาวุโสขึ้นก่อน
|
|
|
|
|
Date :
2009-10-19 15:56:32 |
By :
Avrill |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ก็ตามลำดับเลยอะครับ
$sql="select*from tb_members where member_conf='1' order by member_depart , number_id ";
|
|
|
|
|
Date :
2009-10-19 16:04:37 |
By :
Sek-Artdrinker |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณค่ะ ได้แล้ว
แต่ว่ายังมีอีกค่ะ รบกวนอีกหน่อย ถ้าจะกำหนดให้แต่ละแผนก เรียงลำดับตามที่เราต้อการได้หรือไม่
เพราะว่าอยากเอาแผนกผู้บริหาร ไว้บนสุด
|
|
|
|
|
Date :
2009-10-19 16:23:03 |
By :
Avrill |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|