2011-09-17 2 views
-1

회사 이름이 & 인 선택 상자가 아래 코드와 같습니다.PHP는 공백이있는 값을 무시합니다. <select> 상자

<option value=$getClient[company_name]> 

이 후이 부분 만 "ABCD"이 표시, 제출 값의 같은 ABCD 회사 같은이있는 경우

echo "<option value=$getClient[company_name]>$getClient[company_name]</option>"; 

건이다. 공백이 생기면 줄이 빠져있다. 하지만 데이터베이스를 저장하는 곳에서는 프론트 엔드를 통해 데이터를 보려고 할 때 "Abcd Company"로 표시됩니다. 이런 일이 발생합니다.

누군가 나를 도와 드릴까요?

+1

더 많은 PHP 코드 및 렌더링 된 HTML 중 일부를 표시 할 수 있습니까? –

답변

7

value (말장난 의도)의 값은 따옴표로 묶어야합니다 (value=a b은 유효하지 않습니다. value="a b").

또한

, Cross-Site Scripting 방어해야합니다 : 당신이 그것을 밖으로 에코 때

echo '<option value="' . htmlspecialchars($getClient['company_name']) . '">'; 
echo htmlspecialchars($getClient['company_name']); 
echo '</option>'; 
0

, 그것은 다음과 같이 보일 것입니다 ...

<tagName attribute=property with spaces> 

가 그래서 단어 with spaces 다른으로 처리됩니다 HTML의 속성. 다음과 같이 속성 값 주위에 따옴표를 추가해야합니다.

echo "<option value='$getClient[company_name]'>$getClient[company_name]</option>"; 
+0

감사합니다. 너희들은 오늘을 구한다. – Adam

-1

공백을 제거하는 트림 기능을 사용하십시오.

+0

트림 문자열 안의 공백을 삭제하지 않습니다. – RiaD

+0

@RiaD trim **은 문자열 안의 공백 문자를 지우지 않습니다 ** –

0

PHP는 무시하지 않습니다. 정말 PHP는 그것을 얻지 못한다!

value=x yvalue=x으로, 속성 값은 y으로 해석됩니다.
브라우저에 올바른 속성 값이 무엇인지 표시하려면