2014-10-04 5 views
1

문자열의 시작과 끝을 특정 부분 문자열로 표시하는 프로그램에서 해석해야하는 문자열이 있습니다.PHP는 사용자 입력을 받고 새 줄을 유지합니다.

예를 들어이

"Dog 

The information I need 

Cat" 

그러나 이해

"DogTheinformationIneedCat" (or "Dog TheinformationIneed Cat") 

이제 문제는 내가는 사용자가 제출 텍스트 영역에서 데이터를 검색하고 있지만이 촬영 될 때이 모든 파일을 떼어 내고 있지 개행과 데이터는 쓸모 없게됩니다.

사용자로부터 입력을 받고 줄 바꿈을 유지하려면 어떻게해야합니까?

답변

0

기본적으로이 라인은 데이터베이스에서 텍스트를 복용하면 \n

의 형태로 데이터베이스에 보관, 자동으로 html 태그 <br> 거기에 "줄 바꿈"을 변환하는 네이티브 PHP 함수 nl2br를 사용 새로운 라인을 보존합니다.

그냥 예를 들어 nl2br($your_string);

로 사용이 도움이

function retrieve_data() { 
    $data = get_data_from_db() // your get data function 
    return nl2br($data); // this is where the magic happens *THIS IS NOT SAFE DON'T USE ON LIVE SERVER 
} 

save_data($data_from_text_area); // your save data function 

echo retrieve_data() // will echo text with `<br`> 

희망!

편집 : 데이터베이스에서 텍스트를 출력 할 때 는 XSS 공격을 방지하기 위해 사용자 입력을 소독에 또한

는, 항상 기억!

예 : 데이터는 DB에서 오는되지

function sanitize_string($string) { 
    return filter_var($string, FILTERS_SANITIZE_STRING); 
} 

echo nl2br(sanitize_string($string)); 
+0

, 나는 바로 응용 프로그램에 양식에서 사용자로부터 받고 있어요. 웬일인지 이것으로 개행 문자를 가져 오는 것 같지 않습니다 –

+0

우리가 더 잘 도와 줄 수 있도록 코드를 보여줄 수 있습니까? 감사. –

+0

죄송합니다. 아마 도움이되었을 것입니다. https://github.com/wlox/wlox-frontend/blob/master/htdocs/settings.php 정보는 여기에 여기 에서 진행됩니다 https://github.com/wlox/wlox- api/blob/master/lib/User.php 라인 408 –