ช่วยแก้ Code แบ่งหน้านี้ให้หน่อยค่ะ ลองทำตามในกระทู้แล้ว Error หมดเลยค่ะ ขอบคุณนะคะ

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา ช่วยแก้ Code แบ่งหน้านี้ให้หน่อยค่ะ ลองทำตามในกระทู้แล้ว Error หมดเลยค่ะ ขอบคุณนะคะ

ช่วยแก้ Code แบ่งหน้านี้ให้หน่อยค่ะ ลองทำตามในกระทู้แล้ว Error หมดเลยค่ะ ขอบคุณนะคะ
<?
$id_type_select=$_GET[id_type];
?>
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=tis-620" />
<TITLE>ร้านค้าออนไลน์</TITLE></HEAD>
<BODY>
<H2>:: ร้านค้าออนไลน์  ::</H2>
<P>
[ <A HREF="index.php">หน้าแรก</A> ]
[ <A HREF="basket.php">ดูตะกร้าสินค้า</A> ]
</P>
<TABLE WIDTH="770" BORDER="0">
  <TR>
    <TD WIDTH="174" HEIGHT="200" VALIGN="top" BGCOLOR="#EAEAEA">
    <CENTER><B>ประเภทสินค้า</B></CENTER>   
    <?
    include "connect.php";
    include "type_list.php";
    ?>
    </TD>
    <TD WIDTH="580" VALIGN="top"><div align="center">
      <TABLE WIDTH="100%"  BORDER="0" CELLSPACING="4">
    <?
    $sql="select * from tb_product where ref_id_type='$id_type_select' ";
    $result=mysql_db_query($dbname,$sql);
    while ($rs=mysql_fetch_array($result)) {
        $id_prd=$rs[id_prd];
        $code=sprintf("%05d",$id_prd);
        $name_prd=$rs[name_prd];
        $detail_prd=$rs[detail_prd];
        $ref_id_type=$rs[ref_id_type];
        $price_prd=$rs[price_prd];
        $photo_prd=$rs[photo_prd];

        if ($photo_prd=="") {
            $photo_prd="temp.jpg";
        }
        echo "<TR>
                        <TD WIDTH='20%' VALIGN='top'>
                            <IMG SRC='photo/$photo_prd'>
                        </TD>
                        <TD WIDTH='80%' VALIGN='top'>
                            <B>รหัสสินค้า :</B> $code <BR>
                            <B>ชื่อสินค้า : </B>$name_prd <BR>
                            <B>ราคา :</B> $price_prd บาท<BR><BR>
                            [ <A HREF='prd_view.php?id_prd=$id_prd'>แสดงรายละเอียด </A>] 
                            [ <A HREF='basket_add.php?id_prd=$id_prd'>หยิบใส่ตะกร้า </A>]  <BR>
                            </TD>
                    </TR>";
    }
?>      
      </TABLE>
    </TD>
  </TR>
</TABLE>
</BODY>
</HTML>


Homunculus 124.122.77.xxx 03-12-2014 19:47:17

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
ดูโค้ดแบ่งหน้า จากหน้านี้เป็นแนวทางเลย

ทบทวน เพิ่ม ลบ แก้ไข เช็คฟอร์ม แบ่งหน้า อัพรูป ในโค้ดเดียว 

ดูเหมือนคำสั่ง mysql_db_query เหมือนเขาจะบอกให้เลิกใช้แล้ว ลองใช้คำสั่งอื่นแทน

<?
$id_type_select=$_GET[id_type];
// เชื่อมต่อกับฐานข้อมูล        
$link=mysql_connect("localhost","root","test"); // เชื่อมต่อ Server          
mysql_select_db("test");  // ติดต่อฐานข้อมูล          
mysql_query("set character set utf8"); // กำหนดค่า character set ที่จะใช้แสดงผล     
?>
<?php    
// ฟังก์ชั่นสำหรับการแบ่งหน้า NEW MODIFY    
// https://www.ninenik.com/content.php?arti_id=497  
function page_navi($before_p,$plus_p,$total,$total_p,$chk_page){          
    global $urlquery_str;       
    $pPrev=$chk_page-1;       
    $pPrev=($pPrev>=0)?$pPrev:0;       
    $pNext=$chk_page+1;       
    $pNext=($pNext>=$total_p)?$total_p-1:$pNext;            
    $lt_page=$total_p-4;       
    if($chk_page>0){         
        echo "<a  href='$urlquery_str"."pages=".intval($pPrev+1)."' class='naviPN'>Prev</a>";       
    }       
    if($total_p>=11){       
        if($chk_page>=4){       
            echo "<a $nClass href='$urlquery_str"."pages=1'>1</a><a class='SpaceC'>. . .</a>";          
        }       
        if($chk_page<4){       
            for($i=0;$i<$total_p;$i++){         
                $nClass=($chk_page==$i)?"class='selectPage'":"";       
                if($i<=4){       
                echo "<a $nClass href='$urlquery_str"."pages=".intval($i+1)."'>".intval($i+1)."</a> ";          
                }       
                if($i==$total_p-1 ){        
                echo "<a class='SpaceC'>. . .</a><a $nClass href='$urlquery_str"."pages=".intval($i+1)."'>".intval($i+1)."</a> ";          
                }              
            }       
        }       
        if($chk_page>=4 && $chk_page<$lt_page){       
            $st_page=$chk_page-3;       
            for($i=1;$i<=5;$i++){       
                $nClass=($chk_page==($st_page+$i))?"class='selectPage'":"";       
                echo "<a $nClass href='$urlquery_str"."pages=".intval($st_page+$i+1)."'>".intval($st_page+$i+1)."</a> ";             
            }       
            for($i=0;$i<$total_p;$i++){         
                if($i==$total_p-1 ){        
                $nClass=($chk_page==$i)?"class='selectPage'":"";       
                echo "<a class='SpaceC'>. . .</a><a $nClass href='$urlquery_str"."pages=".intval($i+1)."'>".intval($i+1)."</a> ";          
                }              
            }                                          
        }          
        if($chk_page>=$lt_page){       
            for($i=0;$i<=4;$i++){       
                $nClass=($chk_page==($lt_page+$i-1))?"class='selectPage'":"";       
                echo "<a $nClass href='$urlquery_str"."pages=".intval($lt_page+$i)."'>".intval($lt_page+$i)."</a> ";          
            }       
        }               
    }else{       
        for($i=0;$i<$total_p;$i++){         
            $nClass=($chk_page==$i)?"class='selectPage'":"";       
            echo "<a href='$urlquery_str"."pages=".intval($i+1)."' $nClass  >".intval($i+1)."</a> ";          
        }              
    }          
    if($chk_page<$total_p-1){       
        echo "<a href='$urlquery_str"."pages=".intval($pNext+1)."'  class='naviPN'>Next</a>";       
    }       
}    
?>  
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=tis-620" />
<TITLE>ร้านค้าออนไลน์</TITLE>
  <style type="text/css">    
    /* css แบ่งหน้า */    
    .browse_page{       
        clear:both;       
        margin-left:12px;       
        height:25px;       
        margin-top:5px;       
        display:block;       
    }       
    .browse_page a,.browse_page a:hover{       
        display:block;       
        width: 2%;    
        font-size:14px;       
        float:left;       
        margin:0px 5px;    
        border:1px solid #CCCCCC;       
        background-color:#F4F4F4;       
        color:#333333;       
        text-align:center;       
        line-height:22px;       
        font-weight:bold;       
        text-decoration:none;       
        -webkit-border-radius: 5px;    
        -moz-border-radius: 5px;    
        border-radius: 5px;     
    }       
    .browse_page a:hover{       
        border:1px solid #CCCCCC;    
        background-color:#999999;    
        color:#FFFFFF;       
    }       
    .browse_page a.selectPage{       
        display:block;       
        width:45px;       
        font-size:14px;       
        float:left;       
        margin-right:2px;       
        border:1px solid #CCCCCC;    
        background-color:#999999;    
        color:#FFFFFF;       
        text-align:center;       
        line-height:22px;        
        font-weight:bold;       
        -webkit-border-radius: 5px;    
        -moz-border-radius: 5px;    
        border-radius: 5px;     
    }       
    .browse_page a.SpaceC{       
        display:block;       
        width:45px;       
        font-size:14px;       
        float:left;       
        margin-right:2px;       
        border:0px dotted #0A85CB;       
        background-color:#FFFFFF;       
        color:#333333;       
        text-align:center;       
        line-height:22px;       
        font-weight:bold;       
        -webkit-border-radius: 5px;    
        -moz-border-radius: 5px;    
        border-radius: 5px;     
    }       
    .browse_page a.naviPN{       
        width:50px;       
        font-size:12px;       
        display:block;       
    /*    width:25px;   */    
        float:left;       
        border:1px solid #CCCCCC;    
        background-color:#999999;    
        color:#FFFFFF;       
        text-align:center;       
        line-height:22px;       
        font-weight:bold;          
        -webkit-border-radius: 5px;    
        -moz-border-radius: 5px;    
        border-radius: 5px;     
    }      
    /* จบ css แบ่งหน้า */    
    </style>  
</HEAD>
<BODY>
<H2>:: ร้านค้าออนไลน์  ::</H2>
<P>
[ <A HREF="index.php">หน้าแรก</A> ]
[ <A HREF="basket.php">ดูตะกร้าสินค้า</A> ]
</P>
<TABLE WIDTH="770" BORDER="0">
  <TR>
    <TD WIDTH="174" HEIGHT="200" VALIGN="top" BGCOLOR="#EAEAEA">
    <CENTER><B>ประเภทสินค้า</B></CENTER>   
    <?
    include "type_list.php";
    ?>
    </TD>
    <TD WIDTH="580" VALIGN="top"><div align="center">
      <TABLE WIDTH="100%"  BORDER="0" CELLSPACING="4">
    <?
    // ส่วนของการแสดงข้อมูล จากฐานข้อมูล สนใจเรื่องแบ่งหน้าดูได้ที่  
    //   
    $i=0;  
    $q="  
    SELECT * FROM tb_product   where ref_id_type='$id_type_select 
    ";  
    $qr=mysql_query($q);      
    $total=@mysql_num_rows($qr);    
    $e_page=2; // กำหนด จำนวนรายการที่แสดงในแต่ละหน้า       
    if(!isset($_GET['pages'])){       
        $_GET['pages']=0;       
    }else{       
        $_GET['pages']=$_GET['pages']-1;    
        if($_GET['pages']<0){    
            $_GET['pages']=0;       
        }    
        $chk_page=$_GET['pages'];         
        $_GET['pages']=$_GET['pages']*$e_page;       
    }       
    $q.="  LIMIT ".$_GET['pages'].",$e_page";    
  
    $qr=@mysql_query($q);       
    if(@mysql_num_rows($qr)>=1){       
        $plus_p=($chk_page*$e_page)+@mysql_num_rows($qr);       
    }else{       
        $plus_p=($chk_page*$e_page);           
    }       
    $total_p=ceil($total/$e_page);       
    $before_p=($chk_page*$e_page)+1;      
    /// END PAGE NAVI ZONE         
  
    while($rs=mysql_fetch_assoc($qr)){  
        $id_prd=$rs[id_prd];
        $code=sprintf("%05d",$id_prd);
        $name_prd=$rs[name_prd];
        $detail_prd=$rs[detail_prd];
        $ref_id_type=$rs[ref_id_type];
        $price_prd=$rs[price_prd];
        $photo_prd=$rs[photo_prd];

        if ($photo_prd=="") {
            $photo_prd="temp.jpg";
        }
        echo "<TR>
                        <TD WIDTH='20%' VALIGN='top'>
                            <IMG SRC='photo/$photo_prd'>
                        </TD>
                        <TD WIDTH='80%' VALIGN='top'>
                            <B>รหัสสินค้า :</B> $code <BR>
                            <B>ชื่อสินค้า : </B>$name_prd <BR>
                            <B>ราคา :</B> $price_prd บาท<BR><BR>
                            [ <A HREF='prd_view.php?id_prd=$id_prd'>แสดงรายละเอียด </A>] 
                            [ <A HREF='basket_add.php?id_prd=$id_prd'>หยิบใส่ตะกร้า </A>]  <BR>
                            </TD>
                    </TR>";
    }
?>      
      </TABLE>
    </TD>
  </TR>
</TABLE>
<div style="margin:auto;width:100%;">    
  <?php if($total>$e_page){ ?>                      
  <div class="browse_page">       
    <?php          
    if(count($_GET)<=1){    
        $urlquery_str="?";    
    }else{    
        $para_get="";    
        foreach($_GET as $key=>$value){    
            if($key!="pages"){    
                $para_get.=$key."=".$value."&";    
            }    
        }    
        $urlquery_str="?$para_get";    
    }    
    // เรียกใช้งานฟังก์ชั่น สำหรับแสดงการแบ่งหน้า          
    page_navi($before_p,$plus_p,$total,$total_p,$chk_page);           
    ?>    
    </div>       
    <?php } ?>      
</div>      
</BODY>
</HTML> 


ninenik 1.46.145.xxx 03-12-2014
 ความคิดเห็นที่ 2
ทดลองแล้วขึ้น Error แบบนี้ค่ะ

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:AppServwwwshop2prd_list.php on line 202


homunculus 180.183.131.xxx 03-12-2014 22:27
 ความคิดเห็นที่ 3
Code นี้ค่ะ / ยังแก้ไม่หายเลยค่ะ / ขึ้น Error แบบนี้ ค่ะ   /      Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:AppServwwwshop2prd_list.php on line 202 


  <?  
    $id_type_select=$_GET[id_type];  
    // เชื่อมต่อกับฐานข้อมูล          
    $link=mysql_connect("localhost","root","1234"); // เชื่อมต่อ Server            
    mysql_select_db("db_shop");  // ติดต่อฐานข้อมูล            
    mysql_query("set character set utf8"); // กำหนดค่า character set ที่จะใช้แสดงผล       
    ?>  
    <?php      
    // ฟังก์ชั่นสำหรับการแบ่งหน้า NEW MODIFY      
    // https://www.ninenik.com/content.php?arti_id=497    
    function page_navi($before_p,$plus_p,$total,$total_p,$chk_page){            
        global $urlquery_str;         
        $pPrev=$chk_page-1;         
        $pPrev=($pPrev>=0)?$pPrev:0;         
        $pNext=$chk_page+1;         
        $pNext=($pNext>=$total_p)?$total_p-1:$pNext;              
        $lt_page=$total_p-4;         
        if($chk_page>0){           
            echo "<a  href='$urlquery_str"."pages=".intval($pPrev+1)."' class='naviPN'>Prev</a>";         
        }         
        if($total_p>=11){         
            if($chk_page>=4){         
                echo "<a $nClass href='$urlquery_str"."pages=1'>1</a><a class='SpaceC'>. . .</a>";            
            }         
            if($chk_page<4){         
                for($i=0;$i<$total_p;$i++){           
                    $nClass=($chk_page==$i)?"class='selectPage'":"";         
                    if($i<=4){         
                    echo "<a $nClass href='$urlquery_str"."pages=".intval($i+1)."'>".intval($i+1)."</a> ";            
                    }         
                    if($i==$total_p-1 ){          
                    echo "<a class='SpaceC'>. . .</a><a $nClass href='$urlquery_str"."pages=".intval($i+1)."'>".intval($i+1)."</a> ";            
                    }                
                }         
            }         
            if($chk_page>=4 && $chk_page<$lt_page){         
                $st_page=$chk_page-3;         
                for($i=1;$i<=5;$i++){         
                    $nClass=($chk_page==($st_page+$i))?"class='selectPage'":"";         
                    echo "<a $nClass href='$urlquery_str"."pages=".intval($st_page+$i+1)."'>".intval($st_page+$i+1)."</a> ";               
                }         
                for($i=0;$i<$total_p;$i++){           
                    if($i==$total_p-1 ){          
                    $nClass=($chk_page==$i)?"class='selectPage'":"";         
                    echo "<a class='SpaceC'>. . .</a><a $nClass href='$urlquery_str"."pages=".intval($i+1)."'>".intval($i+1)."</a> ";            
                    }                
                }                                            
            }            
            if($chk_page>=$lt_page){         
                for($i=0;$i<=4;$i++){         
                    $nClass=($chk_page==($lt_page+$i-1))?"class='selectPage'":"";         
                    echo "<a $nClass href='$urlquery_str"."pages=".intval($lt_page+$i)."'>".intval($lt_page+$i)."</a> ";            
                }         
            }                 
        }else{         
            for($i=0;$i<$total_p;$i++){           
                $nClass=($chk_page==$i)?"class='selectPage'":"";         
                echo "<a href='$urlquery_str"."pages=".intval($i+1)."' $nClass  >".intval($i+1)."</a> ";            
            }                
        }            
        if($chk_page<$total_p-1){         
            echo "<a href='$urlquery_str"."pages=".intval($pNext+1)."'  class='naviPN'>Next</a>";         
        }         
    }      
    ?>    
    <HTML>  
    <HEAD>  
    <meta http-equiv="Content-Type" content="text/html; charset=tis-620" />  
    <TITLE>ร้านค้าออนไลน์</TITLE>  
      <style type="text/css">      
        /* css แบ่งหน้า */      
        .browse_page{         
            clear:both;         
            margin-left:12px;         
            height:25px;         
            margin-top:5px;         
            display:block;         
        }         
        .browse_page a,.browse_page a:hover{         
            display:block;         
            width: 2%;      
            font-size:14px;         
            float:left;         
            margin:0px 5px;      
            border:1px solid #CCCCCC;         
            background-color:#F4F4F4;         
            color:#333333;         
            text-align:center;         
            line-height:22px;         
            font-weight:bold;         
            text-decoration:none;         
            -webkit-border-radius: 5px;      
            -moz-border-radius: 5px;      
            border-radius: 5px;       
        }         
        .browse_page a:hover{         
            border:1px solid #CCCCCC;      
            background-color:#999999;      
            color:#FFFFFF;         
        }         
        .browse_page a.selectPage{         
            display:block;         
            width:45px;         
            font-size:14px;         
            float:left;         
            margin-right:2px;         
            border:1px solid #CCCCCC;      
            background-color:#999999;      
            color:#FFFFFF;         
            text-align:center;         
            line-height:22px;          
            font-weight:bold;         
            -webkit-border-radius: 5px;      
            -moz-border-radius: 5px;      
            border-radius: 5px;       
        }         
        .browse_page a.SpaceC{         
            display:block;         
            width:45px;         
            font-size:14px;         
            float:left;         
            margin-right:2px;         
            border:0px dotted #0A85CB;         
            background-color:#FFFFFF;         
            color:#333333;         
            text-align:center;         
            line-height:22px;         
            font-weight:bold;         
            -webkit-border-radius: 5px;      
            -moz-border-radius: 5px;      
            border-radius: 5px;       
        }         
        .browse_page a.naviPN{         
            width:50px;         
            font-size:12px;         
            display:block;         
        /*    width:25px;   */      
            float:left;         
            border:1px solid #CCCCCC;      
            background-color:#999999;      
            color:#FFFFFF;         
            text-align:center;         
            line-height:22px;         
            font-weight:bold;            
            -webkit-border-radius: 5px;      
            -moz-border-radius: 5px;      
            border-radius: 5px;       
        }        
        /* จบ css แบ่งหน้า */      
        </style>    
    </HEAD>  
    <BODY>  
    <H2>:: ร้านค้าออนไลน์  ::</H2>  
    <P>  
    [ <A HREF="index.php">หน้าแรก</A> ]  
    [ <A HREF="basket.php">ดูตะกร้าสินค้า</A> ]  
    </P>  
    <TABLE WIDTH="770" BORDER="0">  
      <TR>  
        <TD WIDTH="174" HEIGHT="200" VALIGN="top" BGCOLOR="#EAEAEA">  
        <CENTER><B>ประเภทสินค้า</B></CENTER>     
        <?
        include "connect.php";
        include "type_list.php";  
        ?>  
        </TD>  
        <TD WIDTH="580" VALIGN="top"><div align="center">  
          <TABLE WIDTH="100%"  BORDER="0" CELLSPACING="4">  
        <?  
        // ส่วนของการแสดงข้อมูล จากฐานข้อมูล สนใจเรื่องแบ่งหน้าดูได้ที่    
        //     
        $i=0;    
        $q="    
        SELECT * FROM tb_product   where ref_id_type='$id_type_select   
        ";    
        $qr=mysql_query($q);        
        $total=@mysql_num_rows($qr);      
        $e_page=2; // กำหนด จำนวนรายการที่แสดงในแต่ละหน้า         
        if(!isset($_GET['pages'])){         
            $_GET['pages']=0;         
        }else{         
            $_GET['pages']=$_GET['pages']-1;      
            if($_GET['pages']<0){      
                $_GET['pages']=0;         
            }      
            $chk_page=$_GET['pages'];           
            $_GET['pages']=$_GET['pages']*$e_page;         
        }         
        $q.="  LIMIT ".$_GET['pages'].",$e_page";      
        
        $qr=@mysql_query($q);         
        if(@mysql_num_rows($qr)>=1){         
            $plus_p=($chk_page*$e_page)+@mysql_num_rows($qr);         
        }else{         
            $plus_p=($chk_page*$e_page);             
        }         
        $total_p=ceil($total/$e_page);         
        $before_p=($chk_page*$e_page)+1;        
        /// END PAGE NAVI ZONE           
        
        while($rs=mysql_fetch_assoc($qr)){    
            $id_prd=$rs[id_prd];  
            $code=sprintf("%05d",$id_prd);  
            $name_prd=$rs[name_prd];  
            $detail_prd=$rs[detail_prd];  
            $ref_id_type=$rs[ref_id_type];  
            $price_prd=$rs[price_prd];  
            $photo_prd=$rs[photo_prd];  
      
            if ($photo_prd=="") {  
                $photo_prd="temp.jpg";  
            }  
            echo "<TR>  
                            <TD WIDTH='20%' VALIGN='top'>  
                                <IMG SRC='photo/$photo_prd'>  
                            </TD>  
                            <TD WIDTH='80%' VALIGN='top'>  
                                <B>รหัสสินค้า :</B> $code <BR>  
                                <B>ชื่อสินค้า : </B>$name_prd <BR>  
                                <B>ราคา :</B> $price_prd บาท<BR><BR>  
                                [ <A HREF='prd_view.php?id_prd=$id_prd'>แสดงรายละเอียด </A>]   
                                [ <A HREF='basket_add.php?id_prd=$id_prd'>หยิบใส่ตะกร้า </A>]  <BR>  
                                </TD>  
                        </TR>";  
        }  
    ?>        
          </TABLE>  
        </TD>  
      </TR>  
    </TABLE>  
    <div style="margin:auto;width:100%;">      
      <?php if($total>$e_page){ ?>                        
      <div class="browse_page">         
        <?php            
        if(count($_GET)<=1){      
            $urlquery_str="?";      
        }else{      
            $para_get="";      
            foreach($_GET as $key=>$value){      
                if($key!="pages"){      
                    $para_get.=$key."=".$value."&";      
                }      
            }      
            $urlquery_str="?$para_get";      
        }      
        // เรียกใช้งานฟังก์ชั่น สำหรับแสดงการแบ่งหน้า            
        page_navi($before_p,$plus_p,$total,$total_p,$chk_page);             
        ?>      
        </div>         
        <?php } ?>        
    </div>        
    </BODY>  
    </HTML>  


homunculus 180.183.131.xxx 03-12-2014 22:28
 ความคิดเห็นที่ 4
 <?        
include "connect.php";

โค้ดบรรทัดนี้ เป็นการเชื่อมต่อกับฐานข้อมูลหรือปล่าว ตัดออกไปก่อน ใช้โค้ดเหมือนที่ส่งไป ไม่ต้อง include ไฟล์นี้
เพราะเราจะใช้การเชื่อมต่อกับฐานข้อมูลจากด้านบนแทน


ninenik 1.47.81.xxx 04-12-2014
 ความคิดเห็นที่ 5
ใช่ค่ะ <? include "connect.php" เป็นไฟล์ติอต่อฐานข้อมูล แต่พอเอาออกแล้วขึ้น Error แบบนี้ค่ะ 


    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource inC:AppServwwwshop1type_list.phpon line 5

และ



Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:AppServwwwshop1prd_list.php on line 200



Code ค่ะ

<?
$id_type_select=$_GET[id_type];
// เชื่อมต่อกับฐานข้อมูล        
$link=mysql_connect("localhost","root","1234"); // เชื่อมต่อ Server          
mysql_select_db("db_shop");  // ติดต่อฐานข้อมูล          
mysql_query("set character set utf8"); // กำหนดค่า character set ที่จะใช้แสดงผล     
?>
<?php    
// ฟังก์ชั่นสำหรับการแบ่งหน้า NEW MODIFY    
// https://www.ninenik.com/content.php?arti_id=497  
function page_navi($before_p,$plus_p,$total,$total_p,$chk_page){          
    global $urlquery_str;       
    $pPrev=$chk_page-1;       
    $pPrev=($pPrev>=0)?$pPrev:0;       
    $pNext=$chk_page+1;       
    $pNext=($pNext>=$total_p)?$total_p-1:$pNext;            
    $lt_page=$total_p-4;       
    if($chk_page>0){         
        echo "<a  href='$urlquery_str"."pages=".intval($pPrev+1)."' class='naviPN'>Prev</a>";       
    }       
    if($total_p>=11){       
        if($chk_page>=4){       
            echo "<a $nClass href='$urlquery_str"."pages=1'>1</a><a class='SpaceC'>. . .</a>";          
        }       
        if($chk_page<4){       
            for($i=0;$i<$total_p;$i++){         
                $nClass=($chk_page==$i)?"class='selectPage'":"";       
                if($i<=4){       
                echo "<a $nClass href='$urlquery_str"."pages=".intval($i+1)."'>".intval($i+1)."</a> ";          
                }       
                if($i==$total_p-1 ){        
                echo "<a class='SpaceC'>. . .</a><a $nClass href='$urlquery_str"."pages=".intval($i+1)."'>".intval($i+1)."</a> ";          
                }              
            }       
        }       
        if($chk_page>=4 && $chk_page<$lt_page){       
            $st_page=$chk_page-3;       
            for($i=1;$i<=5;$i++){       
                $nClass=($chk_page==($st_page+$i))?"class='selectPage'":"";       
                echo "<a $nClass href='$urlquery_str"."pages=".intval($st_page+$i+1)."'>".intval($st_page+$i+1)."</a> ";             
            }       
            for($i=0;$i<$total_p;$i++){         
                if($i==$total_p-1 ){        
                $nClass=($chk_page==$i)?"class='selectPage'":"";       
                echo "<a class='SpaceC'>. . .</a><a $nClass href='$urlquery_str"."pages=".intval($i+1)."'>".intval($i+1)."</a> ";          
                }              
            }                                          
        }          
        if($chk_page>=$lt_page){       
            for($i=0;$i<=4;$i++){       
                $nClass=($chk_page==($lt_page+$i-1))?"class='selectPage'":"";       
                echo "<a $nClass href='$urlquery_str"."pages=".intval($lt_page+$i)."'>".intval($lt_page+$i)."</a> ";          
            }       
        }               
    }else{       
        for($i=0;$i<$total_p;$i++){         
            $nClass=($chk_page==$i)?"class='selectPage'":"";       
            echo "<a href='$urlquery_str"."pages=".intval($i+1)."' $nClass  >".intval($i+1)."</a> ";          
        }              
    }          
    if($chk_page<$total_p-1){       
        echo "<a href='$urlquery_str"."pages=".intval($pNext+1)."'  class='naviPN'>Next</a>";       
    }       
}    
?>  
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=tis-620" />
<TITLE>ร้านค้าออนไลน์</TITLE>
  <style type="text/css">    
    /* css แบ่งหน้า */    
    .browse_page{       
        clear:both;       
        margin-left:12px;       
        height:25px;       
        margin-top:5px;       
        display:block;       
    }       
    .browse_page a,.browse_page a:hover{       
        display:block;       
        width: 2%;    
        font-size:14px;       
        float:left;       
        margin:0px 5px;    
        border:1px solid #CCCCCC;       
        background-color:#F4F4F4;       
        color:#333333;       
        text-align:center;       
        line-height:22px;       
        font-weight:bold;       
        text-decoration:none;       
        -webkit-border-radius: 5px;    
        -moz-border-radius: 5px;    
        border-radius: 5px;     
    }       
    .browse_page a:hover{       
        border:1px solid #CCCCCC;    
        background-color:#999999;    
        color:#FFFFFF;       
    }       
    .browse_page a.selectPage{       
        display:block;       
        width:45px;       
        font-size:14px;       
        float:left;       
        margin-right:2px;       
        border:1px solid #CCCCCC;    
        background-color:#999999;    
        color:#FFFFFF;       
        text-align:center;       
        line-height:22px;        
        font-weight:bold;       
        -webkit-border-radius: 5px;    
        -moz-border-radius: 5px;    
        border-radius: 5px;     
    }       
    .browse_page a.SpaceC{       
        display:block;       
        width:45px;       
        font-size:14px;       
        float:left;       
        margin-right:2px;       
        border:0px dotted #0A85CB;       
        background-color:#FFFFFF;       
        color:#333333;       
        text-align:center;       
        line-height:22px;       
        font-weight:bold;       
        -webkit-border-radius: 5px;    
        -moz-border-radius: 5px;    
        border-radius: 5px;     
    }       
    .browse_page a.naviPN{       
        width:50px;       
        font-size:12px;       
        display:block;       
    /*    width:25px;   */    
        float:left;       
        border:1px solid #CCCCCC;    
        background-color:#999999;    
        color:#FFFFFF;       
        text-align:center;       
        line-height:22px;       
        font-weight:bold;          
        -webkit-border-radius: 5px;    
        -moz-border-radius: 5px;    
        border-radius: 5px;     
    }      
    /* จบ css แบ่งหน้า */    
    </style>  
</HEAD>
<BODY>
<H2>:: ร้านค้าออนไลน์  ::</H2>
<P>
[ <A HREF="index.php">หน้าแรก</A> ]
[ <A HREF="basket.php">ดูตะกร้าสินค้า</A> ]
</P>
<TABLE WIDTH="770" BORDER="0">
  <TR>
    <TD WIDTH="174" HEIGHT="200" VALIGN="top" BGCOLOR="#EAEAEA">
    <CENTER><B>ประเภทสินค้า</B></CENTER>   
    <?
    include "type_list.php";
    ?>
    </TD>
    <TD WIDTH="580" VALIGN="top"><div align="center">
      <TABLE WIDTH="100%"  BORDER="0" CELLSPACING="4">
    <?
    // ส่วนของการแสดงข้อมูล จากฐานข้อมูล สนใจเรื่องแบ่งหน้าดูได้ที่  
    //   
    $i=0;  
    $q="  
    SELECT * FROM tb_product   where ref_id_type='$id_type_select 
    ";  
    $qr=mysql_query($q);      
    $total=@mysql_num_rows($qr);    
    $e_page=2; // กำหนด จำนวนรายการที่แสดงในแต่ละหน้า       
    if(!isset($_GET['pages'])){       
        $_GET['pages']=0;       
    }else{       
        $_GET['pages']=$_GET['pages']-1;    
        if($_GET['pages']<0){    
            $_GET['pages']=0;       
        }    
        $chk_page=$_GET['pages'];         
        $_GET['pages']=$_GET['pages']*$e_page;       
    }       
    $q.="  LIMIT ".$_GET['pages'].",$e_page";    
  
    $qr=@mysql_query($q);       
    if(@mysql_num_rows($qr)>=1){       
        $plus_p=($chk_page*$e_page)+@mysql_num_rows($qr);       
    }else{       
        $plus_p=($chk_page*$e_page);           
    }       
    $total_p=ceil($total/$e_page);       
    $before_p=($chk_page*$e_page)+1;      
    /// END PAGE NAVI ZONE         
  
    while($rs=mysql_fetch_assoc($qr)){
   $id_prd=$rs[id_prd];
        $code=sprintf("%05d",$id_prd);
        $name_prd=$rs[name_prd];
        $detail_prd=$rs[detail_prd];
        $ref_id_type=$rs[ref_id_type];
        $price_prd=$rs[price_prd];
        $photo_prd=$rs[photo_prd];
 
        if ($photo_prd=="") {
            $photo_prd="temp.jpg";
        }
        echo "<TR>
                        <TD WIDTH='20%' VALIGN='top'>
                            <IMG SRC='photo/$photo_prd'>
                        </TD>
                        <TD WIDTH='80%' VALIGN='top'>
                            <B>รหัสสินค้า :</B> $code <BR>
                            <B>ชื่อสินค้า : </B>$name_prd <BR>
                            <B>ราคา :</B> $price_prd บาท<BR><BR>
                            [ <A HREF='prd_view.php?id_prd=$id_prd'>แสดงรายละเอียด </A>] 
                            [ <A HREF='basket_add.php?id_prd=$id_prd'>หยิบใส่ตะกร้า </A>]  <BR>
                            </TD>
                    </TR>";
    }
?>      
      </TABLE>
    </TD>
  </TR>
</TABLE>
<div style="margin:auto;width:100%;">    
  <?php if($total>$e_page){ ?>                      
  <div class="browse_page">       
    <?php          
    if(count($_GET)<=1){    
        $urlquery_str="?";    
    }else{    
        $para_get="";    
        foreach($_GET as $key=>$value){    
            if($key!="pages"){    
                $para_get.=$key."=".$value."&";    
            }    
        }    
        $urlquery_str="?$para_get";    
    }    
    // เรียกใช้งานฟังก์ชั่น สำหรับแสดงการแบ่งหน้า          
    page_navi($before_p,$plus_p,$total,$total_p,$chk_page);           
    ?>    
    </div>       
    <?php } ?>      
</div>      
</BODY>
</HTML> 


homunculus 203.144.162.xxx 04-12-2014 11:09
 ความคิดเห็นที่ 6
ตาม error ที่แจ้งก็น่าจะเป็นที่คำสั่ง sql ไปดึงข้อมูลไม่พบ
ลองเช็คโค้ดดูว่า ตัวแปร $id_type_select มาจากไหน 
แล้วรับค่าให้ถูกต้อง
 
ตามโค้ด เหมือนจะส่งมาจากตัวแปร $_GET[id_type];
ดังนั้นหน้าไฟล์นี้เราก็ต้องส่งค่า มาใน url ด้วย
เช่นถ้าไฟล์ showlist.php เราก็ต้องเรียก เปิดเป็น
showlist.php?id_type=1 
เลข 1 ก็คือค่าที่เราจะส่งมา

หรือจะลองโชว์ทั้งหมดแบบไม่มีเงื่อนไข ดูการ่ำงานเบื้องต้นก็ลองเปลี่ยน
จาก 
$q="  
   SELECT * FROM tb_product   where ref_id_type='$id_type_select 
";  
 
เป็น
 
$q="  
   SELECT * FROM tb_product   
";  


ninenik 124.122.70.xxx 04-12-2014
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ