2014-02-20 3 views
1

약간의 질문이 있습니다.동일한 단축 코드를 사용하여 데이터베이스의 테이블을 표시하십시오.

나는 데이터베이스에 저장된 데이터로 테이블을 만드는 단축 코드를 만들고 싶습니다. 그러나 내가 보여주고 싶은 테이블 (데이터베이스)을 지정하기 위해 shortcode 속성을 보내려고합니다.

add_shortcode("list", "list"); 

function list($tbl) { 
    extract(shortcode_atts(array('item' => '')), $tbl); 
    if($item!="") { 
     $mydb= new wpdb('root','root','mydb','localhost'); 
     $rows = $mydb->get_results("select * from ".$item); 
     echo "<table>"; 
     foreach ($rows as $obj) { 
      echo "<tr>"; 
      //Here I want to put the content of the row 
      echo "</tr>"; 
     } 
     echo "</table>"; 
    } else { 
     echo "<h2>blank</h2>"; 
    } 
} 

단축 코드는 다음과 같이 될 것이다 :

[list item="table1"] 

어떻게 데이터베이스의 모든 테이블을 보여 같은 단축 코드를 사용할 수 있습니까? 각 행을 관리하여 모든 필드를 표시하려면 어떻게해야합니까? 왜냐하면 나는 다른 열 번호와 다른 열 이름을 가진 다른 테이블을 가지고 있고, 테이블에있는 각 셀을 표시하고 싶다.

감사합니다.

답변

0

방금 ​​해결되었습니다.

function list($tbl) { 
    extract(shortcode_atts(array('item' => '')), $tbl); 
    if($tbl["item"]!="") { 
     $mydb= new wpdb('root','root','mydb','localhost'); 
     $rows = $mydb->get_results("select * from ".$tbl["item"].";",ARRAY_N); 
     echo "<table>"; 
     for($i=0;$i<count($rows);$i++) { 
      echo "<tr>"; 
      for($j=0;$j<count($rows[$i]);$j++) { 
       echo "<td>".$rows[$i][$j]."</td>"; 
      }   
      echo "</tr>"; 
     } 
     echo "</table>"; 
    } else { 
     echo "<h2>blank attr</h2>"; 
    } 
} 

누군가가 더 좋은 답변을 공유하면 공유하십시오!

:

관련 문제