묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
PHP 에서 변수값이 지정되지 않았을경우...?
2005.10.06 12:48
편의상 form 태그는 생략하고...
<input type="text" name="number" value="<?$number?>">
<?
$total = $number * 10;
echo $total;
?>
이런 PHP 태그를 쓸때, 처음 페이지에 접속하면, input 값이 없기 때문에,
number 라는 변수에는 아시다피시....아무런 값이 없습니다. 즉 '無' 죠...
그런데도 PHP 는 값이 없음에도 불구하고, 이것을 0 으로 계산...
0 x 10 = 0 ...따라서 $total 은 0 이다...
라는 결론에 도달하여 페이지에 처음 접속할때 부터 페이지 한가운데...
덩그러니 0 이라는 숫자가 혼자 떠 있는 웃지못할 사건이 벌어집니다...
이런 경우에는 어떤 해결책이 있습니까?
가령 변수값이 '無' 일때는 아무런 값도 출력하지 않는다거나 말이죠..
if $total = 0 라는 변수 가정문은 말고요..-_-
(이러면 실제 0 을 입력했을때 아무것도 안 나오는 문제가 발생...)
으으...어떻게 해결해야 할지 모르겠습니다..ㅠ_ㅠ...
그리고, 혹시 숫자의 3 자리마다 콤마(,) 를 찍어주는 명령어가 있나요..?
1000 => 1,000 하는식으로 말이죠...
<input type="text" name="number" value="<?$number?>">
<?
$total = $number * 10;
echo $total;
?>
이런 PHP 태그를 쓸때, 처음 페이지에 접속하면, input 값이 없기 때문에,
number 라는 변수에는 아시다피시....아무런 값이 없습니다. 즉 '無' 죠...
그런데도 PHP 는 값이 없음에도 불구하고, 이것을 0 으로 계산...
0 x 10 = 0 ...따라서 $total 은 0 이다...
라는 결론에 도달하여 페이지에 처음 접속할때 부터 페이지 한가운데...
덩그러니 0 이라는 숫자가 혼자 떠 있는 웃지못할 사건이 벌어집니다...
이런 경우에는 어떤 해결책이 있습니까?
가령 변수값이 '無' 일때는 아무런 값도 출력하지 않는다거나 말이죠..
if $total = 0 라는 변수 가정문은 말고요..-_-
(이러면 실제 0 을 입력했을때 아무것도 안 나오는 문제가 발생...)
으으...어떻게 해결해야 할지 모르겠습니다..ㅠ_ㅠ...
그리고, 혹시 숫자의 3 자리마다 콤마(,) 를 찍어주는 명령어가 있나요..?
1000 => 1,000 하는식으로 말이죠...
댓글 6
-
beMax
2005.10.06 20:11
-
Lk
2005.10.06 21:15
<input type="text" name="number" value="<?$number?>">
이 부분 이렇게 써도 동작하나요?
<?=$number?> 로 써줘야할텐데... -
Lk
2005.10.06 21:17
변수 가정문으로 써 주시려면 $total = 0 을 if 로 주지말고
!$number 를 가정문으로 줘보시는 건 어떨지요.
if(!$number) exit;
뭐 이런 식으로 -
도로도로
2005.10.07 08:04
답변 감사합니다. PHP 를 제대로 공부하지 않았고, 사실 전공과 아무 상관이 없다보니, 혼자 한참 헤매고 있습니다.ㅠ_ㅠ.. (책도 없이 그냥 이곳저곳에서 주워온 PHP 코드를 혼자서 분석하여 코딩하는 편이라...) -
플로렐라
2005.10.07 11:15
if(!$number) 했을때 $number = 0, $number = null 일때 모두 동작합니다...
if(!is_numeric($number)) 을 써보시는건 어떨까요. -
헐랭이
2005.10.07 21:31
if($number)
{
$total = $number * 10;
}else {
$total = "";
}
$total = number_format($total);
echo "$total";
위에 처럼 하거나 또는 아래처럼 해보세요.
if(!$number)
{
$total = "";
}else {
$total = $number * 10;
}
$total = number_format($total);
echo "$total";
{
$total = $number * 10;
echo $total;
}