숫자만 입력받는 함수인데요? 정정좀해주세요

숫자만 입력받는 함수인데요? 정정좀해주세요

QA

숫자만 입력받는 함수인데요? 정정좀해주세요

답변 1

본문

메인창은  가로, 세로값을 넣는거예요.
물론 여기에 입력한값이 숫자만 입력하도록 프로그램을 짜보았는데..
어디서 잘못되었는지 묘안이 안떠오르네요..
가로 변수의 htnl name = x
세로 변수의 html name = y  
부탁드려요..

<?
if (($x == "") || ($y == ""))
{
  echo("
        <script>
        window.alert('제대로 공란없이 입력해 주세요');
        history.go(-1);
        </script>");
}

function tx($x)
{
    $textx = $x;
    $textx = ereg_replace(" ","",$textx);

    for ($i = 0; $i <= strlen($textx); $i++)
    {
        $temp = substr($textx,$i,1);

        if (ereg("([0-9]{1})","$temp"))
      {
            $xx = $temp;
        }
    }
    return $xx;
}

function ty($y)
{
    $texty = $y;
    $texty = ereg_replace(" ","",$texty);

    for ($i = 0; $i <= strlen($texty); $i++)
  {
        $temp = substr($texty,$i,1);

        if (ereg("([0-9]{1})","$temp"))
        {
            $yy = $temp;
        }
    }
    return $yy;
}


if (($x != tx($x)) || ($y != ty($y)))
{
    echo("
            <script>
            window.alert('제대로 숫자를 입력해 주세요');
            history.go(-1);
            </script>");
}
?>  

이 질문에 댓글 쓰기 :

답변 1

!= 인 비교연산자가 아니라..... !(....)

if (!($x = tx($x)) || !($y = ty($y)))    // !의 위치가 중요하다.
{
  echo("
        <script>
        window.alert('제대로 숫자를 입력해 주세요');
        history.go(-1);
        </script>");
}

이렇게 해보세요.
답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 132
© SIRSOFT
현재 페이지 제일 처음으로