2014-07-24 6 views
-1

안녕하세요! 나는 전체 보고서의 테이블을 가지고 있고 데이터베이스에서 값을 GETT과 숫자를 포맷하고이 PHP 10,000.00 같은 출력이 여기 10000PHP 에코 머니 체재 플러스 금액

을 좋아하지 평가판 PHP 코드가 갖고 싶어. 총 보고서 인쇄를위한 테이블이 있으며 총 금액을 형식화하는 데 문제가 있습니다.

function printpage() 
{ 
window.print() 
} 

</script></head> 
<body> 
<br> 
<br> 
<div class="container"> 
<center> 
<div class="alert alert-success" align="center"><h1>TOTAL REPORT</h1></div> 
<br /> 
<table class="table table-striped table-bordered" border="1" width="900"> 
    <thead> 
     <tr> 
      <th>First Name</th> 
      <th>Last Name</th> 
      <th>Address</th> 

      <th>Start of Event</th> 
      <th>End of Event</th> 
      <th>Quantity</th> 
      <th>Amount</th> 
      <th>Status</th> 
      <th>Confirmation</th>    
     </tr> 
    </thead> 
    <tbody> 
     <?php 
     $con=mysql_connect("localhost","root","")or die(mysql_error()); 
     $db=mysql_select_db('pm')or die(mysql_error()); 

      $query=mysql_query("select * from reservation ")or die(mysql_error()); 
      while($row=mysql_fetch_array($query)){ 
      $id=$row['id']; 
     ?> 
     <tr> 
      <?php $row['id'] ?> 
      <td><?php echo $row['firstname'] ?></td> 
      <td><?php echo $row['lastname'] ?></td> 
      <td><?php echo $row['address'] ?></td> 
      <td><?php echo $row['arrival']?></td> 
      <td><?php echo $row['departure'] ?></td> 
      <td><?php echo $row['result'] ?></td> 

      <td><?php 
      $number = 'payable'; 
      $payable = 0; 
      setlocale(LC_MONETARY,"en_PHP"); 
    echo $row("The price is %i", $payable); 
    ?> </td> 
      <td><?php echo $row['status'] ?></td> 
      <td><?php echo $row['confirmation'] ?></td> 
     </tr> 
     <?php } ?> 
    </tbody> 
</table> 
<?php 
    $result = mysql_query("SELECT sum(payable) FROM reservation") or die(mysql_error()); 
    while ($rows = mysql_fetch_array($result)) { 
?> 

<?php } 

$result1 = mysql_query("SELECT result(qty) FROM rooinventory") or die(mysql_error()); 
while ($rows1 = mysql_fetch_array($result1)) { 
?> 
<div class="pull-right"> 
    <div class="span"> 
     <div class="alert alert-info"><i class="icon-credit-card icon-large">  </i>&nbsp;Total Amount:&nbsp;<?php echo $rows1['sum(p)']; ?></div> 
    </div> 
</div> 
</center> 
<?php } ?> 
+0

mysqli 또는 PDO를 사용하십시오. –

답변

0

사용자 로케일이 잘못하고 $ 번호는 실제로 $ 행의 값이어야합니다.

echo '$' . number_format(floatval($row['payable'])); 
+0

하지만 번호는 내 테이블 행에 있습니다. 숫자를 가져 와서 내 인쇄물에 형식을 넣으려고합니다. –

+0

데이터베이스에서 가치를 얻는 데 문제가있는 경우 해당 숫자의 서식을 지정하는 방법에 대한 대답이 아닙니다. 당신은 테이블에서 행을 가져 와서 $ row [ 'payable']와 같은 것으로 접근 할 필요가있을 것이다. 귀하의 질문에 형식이 잘 맞지 않는 것 같습니다. 문제가 실제로 데이터베이스 테이블에서 값을 검색하는 경우, 서식을 지정해도 거기에 도달하는 데 도움이되지 않습니다. – Zombiesplat

+0

그게 가능하지 않습니까? –

0

에 코드를 Windows 시스템의 경우

setlocale(LC_MONETARY, 'en_US'); 
echo money_format('%i', $row['payable']); 

고정 될 필요가있다. 또한 시스템에 따라 en_US가 충분하지 않을 수도 있습니다 (데비안에 en_US.utf-8이 필요합니다) :

setlocale(LC_MONETARY, "en_US.utf-8"); 
echo money_format("The price is %i", $row['payable']); 
+0

숫자가 내 테이블에 있습니다. 그냥 포맷을 가지고 돈 기호가 있어야합니다. –

+0

테이블에 코드가있는 경우 편집 한 예처럼 사용할 수 있습니다. 하지만 저는 "en_PHP"라는 로케일에 대해 알지 못하지만, 아마 효과가 없을 것입니다. 반면에 쿼리에서 "select * from reservation"에 "payable"가 없다면 @ alan-asher가 말한 것처럼 쿼리 자체에 대해 물어보아야합니다. – fpietka

+0

나는 내 테이블에 지불해야합니다. 가능하지 않다면 나는 PHP + payable를 반향시키고 싶다. 어떻게 될 것인가? –