2014-05-18 1 views
0

데이터베이스에서 데이터를 표시하고 싶지만 다음과 같은 문제가 있습니다. 'text'행의 처음 120 자만 표시하고 싶습니다. 나는 substr 함수로 이것을 할 수 있다는 것을 알고있다. ... substr을 사용하여 웹 페이지에 표시 할 데이터의 제한 문자

나는 내 코드에서 substr를 구현하려고하지만 웹 페이지를 다시로드 할 때 텍스트가 표시되지 않습니다

전체 코드 :

는 (데이터베이스에 연결)

$sql = "SELECT * FROM `table-example`"; 

// 쿼리를 수행하고 결과를 저장하십시오.

$result = $conn->query($sql); 
$text= $row['text']; 

//은 $ 결과는 $ 각 행의 적어도 하나 개의 행

if ($result->num_rows > 0) { 

// 출력 데이터 결과가 포함되어있는 경우

while($row = mysqli_fetch_array($result)) 
{?> 

<div id="preview"> 

<div class="title"> 
<?php echo $row['title'];?> 
</div> 

<div class="subtitle"> 
<?php echo substr($text, 0, 120);?> 
</div> 

</div> 

<?php 
}// end while 
}// end if 
else { 
echo '0 results'; 
} 
?> 

(밀접한)

하는 사람에게 설명시겠습니까 어떻게 해결할 수 있을까요?

+0

'$ text'는 루프의 아무 곳에서도 설정되지 않습니다. '$ row [ 'text']'는 어떨까요? ** 편집 ** 이제'$ text '에 대한 귀하의 과제를 보았습니다. 루프 내부로 이동해야합니다. 그렇게해야합니다. – myesain

+0

고마워, 이제 작동 해. (PHP는 나에게 아직 새로운 ...) – Stan

답변

0

$text = $row['text'] 루프는 while 루프 내에 있습니다.

그 전에는 $row을 선언하지 않으므로 $text이 설정되지 않습니다. $text이 설정되어 있지 않으므로 substr 메서드는 아무 것도 반환하지 않습니다. echo은 아무 것도 반환하지 않습니다.

+0

설명 주셔서 감사합니다. 지금은 잘 작동합니다. – Stan

+0

문제는 없지만 동일한 문제가 발생할 수있는 다른 사람들을 위해 솔루션의 왼쪽에있는 V를 클릭해야합니다. – BananaMan

관련 문제