2017-12-28 42 views
-1

WordPress/woocomerce에서 모든 데이터를 검색하고 일부 작업을 대체하려고합니다. 그러나 실제 HTML을 가져올 수 없으며 브라우저에서도 렌더링됩니다. 교체가 일어난다. 여기에 내 코드 :MySql의 모든 HTML을 배열로 렌더링하지만 코드는 변환하지 마십시오.

$conn

$query = "SELECT post_content FROM wp_posts";  
$result = $conn->query($query); 
$data = mysqli_fetch_all($result,MYSQLI_ASSOC); 

print_r($data); // this shows me all the data, but it is already processed and not the raw html which is stored into the database 

가 어떻게 데이터베이스에서 실제 저장 HTML을받을 수 있나요 MySQL로 내 연결은? 내가 소스보기를 얻을 때 나는 그것을 바다 수 있습니다.

+1

HTML은 항상 렌더링되는 그는'<'또는'>'기호로 괄호를 마크 업. anwers에 대한 –

+0

감사 : 그래서 저장됩니다 레노버하지만 내 배열에만 레노버 에 들어가 - 그러나 나는 모든 코드가 필요합니다. – Marius

답변

0

HTML을 이스케이프 처리하여 렌더링을으로 렌더링하려면 값에 htmlentities()을 사용하십시오. 출력 할 때

이 작업을 수행 할 수 있습니다 위에

<?php 
// perhaps in some loop 
echo htmlentities($row['post_content']); 
?> 

또는 루프를 첫째, 당신은 (인 print_r가는 경우)는 :/

<?php 
$data = [ 
    ['post_content' => '<div id="foo"></div>'], 
    ['post_content' => '<div id="bar"></div>'], 
]; 

array_walk($data, function(&$value, $key) { 
    $value['post_content'] = htmlentities($value['post_content']); 
}); 

print_r($data); 

결과 : https://3v4l.org/aD33U

Array 
(
    [0] => Array 
     (
      [post_content] => &lt;div id=&quot;foo&quot;&gt;&lt;/div&gt; 
     ) 

    [1] => Array 
     (
      [post_content] => &lt;div id=&quot;bar&quot;&gt;&lt;/div&gt; 
     ) 

) 

업데이트 (모든 HTML 태그를 제거)

<?php 
$data = [ 
    ['post_content' => '<td><b> Lenovo </b></td>'], 
    ['post_content' => '<td><b> Dell </b></td>'], 
]; 

array_walk($data, function(&$value, $key) { 
    $value['post_content'] = trim(strip_tags($value['post_content'])); 
}); 

print_r($data); 

결과 : 당신은 대체하지 않는 한 https://3v4l.org/D1lfp

Array 
(
    [0] => Array 
     (
      [post_content] => Lenovo 
     ) 

    [1] => Array 
     (
      [post_content] => Dell 
     ) 

) 
+0

좋아, 여기에 https://stackoverflow.com/questions/35218019/how-to-render-html-tags-from-mysql-database-in-php-이 이론에서 내 질문에 답을 찾았지만 어떻게 할 수 있습니까? 내가 그걸 모두 잡았으니, 지금 내 배열로 그 원시 html을 얻을. 'echo $ data [ 'post_content'];' 그 작업이 잘못되었습니다. 배열은 NULL입니다. – Marius

+0

strip_tags()를 사용하면 HTML에서 태그를 제거합니다. 필요? 업데이트를 참조하십시오. –

+0

죄송합니다. 혼란 스럽습니다. 아무것도 제거하지 않고 테이블에서 코드를 렌더링하지 않으려 고합니다. 모든 태그를 사용하여 직접 DB 내부에서 쿼리를 수행 할 때와 같이 표시하고 싶습니다. – Marius