php
  • echo
  • 2012-05-25 5 views 0 likes 
    0

    데이터베이스 테이블에서 몇 시간 동안 PDF 파일에 표시되는 총 시간을 가져 오는 쿼리를 실행하고 있지만 일부 이상한 이유로 다시 에코가 발생하지 않습니다. 0).에코/출력 0 (영)이 작동하지 않습니다

    $query = mysql_query("SELECT id, SUM(hours_night), SUM(hours_days) FROM table WHERE invoiceID='".mysql_real_escape_string($invoiceID)."'") or die(mysql_error()); 
    $result = mysql_num_rows($query); 
    
    $totalhours_night = 0; 
    
    
        while ($fetch = mysql_fetch_assoc($query)) { 
    
         $totalhours_night += $fetch['SUM(hours_night)']; 
        } 
    
    
    $html_output = "Some html and tables markup... " . $totalhours_night . ""; 
    

    html의 출력은 문제가 없습니다.하지만 문제는 0 (영)을 어떤 이유로 출력하지 않습니다. 시간 결과가 1 또는 5와 같은 것이거나 totalhours를 출력하는 것이 무엇이든간에 시간이 없으면 0을 출력해야합니다.

    시간이 없으면 아무 것도 출력하지 않는 것이 이상해 보였으므로 더보기 좋게 0을 표시해야합니다.

    예를 들어, 예를 들어 number_format ($ totalhours_night, 2); 그것은 0.00을 표시하지 않습니다,하지만 난 그것을 this-

    echo (string)$totalhours_night; 
    
    +0

    number_format과 두 번째 매개 변수는 무엇입니까? – rekire

    +0

    어떻게 출력합니까? 'echo $ totalhours_night;'? 만약 그렇다면 PHP는 실제로 아무것도 출력하지 않을 것입니다. (필자는 항상 매우 성가 셨습니다.) 그냥'echo $ totalhours_night를하십시오. 대신 ';'. –

    +0

    @Laurent [Wat?] (https://www.destroyallsoftware.com/talks/wat)'echo 0;'→'0'. – deceze

    답변

    1

    취급 정수 할 필요가 :

    1. 귀하의 SQL 쿼리, 당신은 '할 수 잘못 t 디스플레이 idSUM(..) 당신이 그것을같은 별칭을 제공 SUM(..)를 사용하는 경우 (id가 고유 한 경우의 아이가 생각을 잃는다) GROUP BY id
    2. 을 사용하지 않는 PHP의이상은 alias1을 참조하십시오.
    3. 이것이 이유가 아닌 경우 var_dump($fetch['alias1']);을 시도하고 실제로 돌아 오는 것을보십시오. (여기에 결과를 게시하면 도움이됩니다.)
    +1

    당신은 당신의 대답을 삭제 한 다음, downvote를 피하기 위해 정확한 것을 재 게시하십시오. –

    +0

    무엇? 편집 할 링크가 없습니다. 모바일 사파리에. 나에게 무엇을 해주길 바래? 삭제 되더라도 아직 남아 있습니다. – tim

    +0

    그건 유용합니다. ;) 게시물을 제거하기에 충분한 담당자가 있습니까? 모바일 사파리에는 편집 링크가 없었습니다. 편집 링크가 downvote 이후에 제거 되었습니까? – tim

    1

    세 가지처럼 문자열로 단지 0

    +0

    1. 그래서 내가 id를 잃어 버리면, 내가 어디서 invoiceID = 'blabla'를 사용했기 때문에 질의가 좋다. 당신의 통찰력에 대해 감사합니다;) – Adriaan

    +0

    글쎄, 거기에는'WHERE'와'GROUP BY'의 근본적인 차이점이 있습니다. 'WHERE'는 필터이고 일치하지 않는 행은 나타나지 않습니다. 'GROUP BY'는 그것들을 함께 붕괴시킵니다. 차이점을 찾기 위해 검색해보십시오. –

    관련 문제