php
  • sql
  • debugging
  • html-table
  • echo
  • 2012-07-18 4 views 0 likes 
    0
    <?php 
    $product_list=""; 
    if(isset($_GET['cat'])){ 
    $sql = mysql_query("SELECT*FROM products WHERE category LIKE'$category'"); 
    
    while($row=mysql_fetch_array($sql)){ 
    $tablerow='3'; 
    $product_list.='<tr>'; 
        while($tablerow >= 0){ 
         $id=$row["id"]; 
         $name=$row["name"]; 
         $price=$row["price"]; 
         $date_added = strftime("%b %d, 20%y",strtotime($row["date_added"])); 
         $discriptiontags = $row['category']; 
         $discription = $row['subcategory']; 
         $size = $row['details']; 
         $qty= $row['inv']; 
         $product_list.='<td><img src="inventory_images/'.$id.'.jpg" width="250" height="167"/><br/>$name</td>'; 
         $tablerow=$tablerow-1; 
    } 
    $product_list.='</tr>'; 
    } 
    }else{ 
    $product_list = "no products in this category"; 
    exit(); 
    }   
    ?> 
    

    그래서이 문제는 다음과 같습니다. $ _GET을 사용하여 데이터베이스의 카테고리 태그를 가져와 LIKE를 사용하여 행 정보를 찾고 3 열의 테이블에서 단일 테이블 셀의 각 행 정보를 표시하고 추가 행을 동적으로 추가합니다. 여기 SQL 쿼리를 사용하여 테이블 반향

    이 3 개 항목을 가지고 있기 때문에 내가 테스트를위한 녹색 범주를 선택

    link to page in question

     <table width="760px" border="1" cellpadding="4"> 
         <?php echo $product_list ?> 
         </table> 
    

    을 표시하도록되어 현장에서 HTML입니다.

    또한 URL 변수가 설정되지 않은 경우 페이지가 전혀 표시되지 않습니다.

    페이지의 PHP의 나머지 :

    <?php 
    ///conect to mysql 
    ///grab page variable 
    include "storescript/connect_to_mysql.php"; 
    $category=""; 
    $tab="-1"; 
    if(isset($_GET['cat'])){ 
        $category=$_GET['cat']; 
    } 
    if(isset($_GET['tab'])){ 
        $tab=$_GET['tab']; 
    } 
    ?> 
    
    +0

    나는 전체 게시물을 읽지 않았지만이'while ($ tablerow> = 0)'은 mysql_fetch_array가 결과를 행 단위로 가져올 것이므로 쓸모없는 것으로 보인다. 사용법에 따라 바꿀 수있다. mysqli 또는 pdo – mishu

    +0

    while ($ tablerow> = 0)은 $를 재설정하기 전에 while 회 돌이를 3 번만 실행하는 데 사용된다. tablerow, 그리고 내가 멍청한 오전 이것은 처음으로 mysqli 또는 pdo 무엇인지 전혀 모르기 때문에 자습서없이 PHP 코드를 시도하는 것입니다. – BedbuG

    +0

    왜 LIKE를 사용합니까? 사용법은'category = '$ category'를 사용할 때와 같은 효과를냅니다. – frececroka

    답변

    0

    category LIKE '%red%'을 사용하여 "red medium Christmas"및 "alsored category"등과 같은 카테고리와 일치해야합니다. category LIKE 'red'은 카테고리 "red"와 일치합니다.

    http://www.techonthenet.com/sql/like.php을 참조하여 LIKE에 대해 자세히 알아보십시오.

    +0

    고마워, 네, 왜냐하면 나는 별개의 텍스트 문자열이있는 공백으로 단어를 분리했기 때문에 어떤 이유로 생각하고있었습니다. (어쨌든 고마워요! – BedbuG

    0

    ) (종료를 사용하지 마십시오; 스크립트를 중지합니다. 따라서 "이 카테고리에는 제품이 없습니다"라는 "절대로"반향하지 않습니다.

    첫 번째 코드가 포함 된 경우 return을 사용하십시오. exit() 대신에. 하지만 어디 코드를 삽입 할 볼 수 없습니다.

    +0

    ive의 한 인스턴스에 대한 전체 카테고리 텍스트를 검색하는 것과 같은 느낌으로 exit()를 return으로 대체했습니다. 또한 변경없이 완전히 제거했습니다. 그것은 표시되지 않습니다, 나는 또한 추가 를 테이블 태그 바깥에 배치하여 표시 할 것인지를 결정하지만 여전히 그렇지는 않습니다. – BedbuG

    관련 문제