2013-06-24 1 views
1

마침내 쿼리에서 생성 된 바코드가 내 테이블에 표시됩니다. 하지만 지금은 $ row [1]의 각 결과에 대한 코드를 얻는 데 문제가 있습니다. 나는 PHP-BARCODE를 사용하려고했지만 모든 바코드를 만들기에는 너무 많은 메모리가 필요하다. Jquery는 메모리를 사용하여 생성하는 것처럼 보입니다. 그래서 내가 왜 그 방법을 선택 했는가.JQuery 바코드 만 쿼리 결과에서 하나의 바코드 생성

이에 어떤 도움을

내 스크립트가 주로 JQUERY에서 홀수 스플래시와 PHP 굉장 할 것이다. 화면 새로 고침 및 바코드 생성을위한 JQUERY. 곧이 장애물을 지나면 나옵니다.

<?php 
include('inc/database.php'); 

// MSSQL Query 
$sql = "SELECT warehouse, pick_order_number, order_status, pick_order_type, customer_order_number 
     FROM pick_order_header 
     WHERE warehouse = 'XDGM' 
     AND order_status <> 'Complete' 
     AND order_status <> 'Closed' 
     AND pick_order_type <> 'Backorder' 
     AND customer_order_number LIKE '%1 hr%'"; 

?> 

<!DOCTYPE HTML> 
<link rel="stylesheet" type="text/css" href="css/master.css"> 
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script> 
<script src="js/jquery-barcode.js"></script> 
<script> 
setTimeout(function(){ 
     window.location.reload(1); 
    }, 5000); 
</script> 

<html> 
<title>Current Orders</title> 
<body> 

<table> 
    <?php 
    // SQLSRV Query 
    $results = sqlsrv_query($conn, $sql); 
    if($results === false) { 
     die(print_r(sqlsrv_errors(), true)); 
    } 
    echo " 
      <table border=1> 
      <tr> 
       <th>Order Number</th> 
       <th>Order Status</th> 
       <th>Order Type</th> 
       <th>Customer Order</th> 
       <th>Barcode</th> 
      </tr>"; 
    while ($row = sqlsrv_fetch_array($results)) 
    { 
     $odrnum = $row[1]; 
     $odrstatus = $row[2]; 
     $odrtype = $row[3]; 
     $custorder = $row[4]; 
     $barcode = $row[1]; 

     echo " 
      <tr> 
       <td>$odrnum</td> 
       <td>$odrstatus</td> 
       <td>$odrtype</td> 
       <td>$custorder</td> 
       <td> 
     <div id="bcTarget_'.$odrnum.'"><input type="button" id="bc" name="bc" value="Click Here" /></div> 
    </td> 
    <script> 
    $("#bc").click(function(){$("#bcTarget_'.$odrnum.'").barcode("'.$row[1].'", "code39",{barWidth:2.5, barHeight:30, showHRI: true, bgColor: "#DEF3CA"});});</script> 
</tr>'; 

    } 
    echo "</table>"; 

    ?> 
</table> 
</body> 
</html> 

저는 완벽한 멍청한 놈입니다. 해결책을 찾으면 나에게도 설명해 줄 수 있습니까?

감사 무리

답변

1

문제는 당신이 같은 식별자 bcTarget 및 JQuery와 중 하나가 DOM 내에서 발견 된 첫 번째를 선택할 것보다 다음이 있다는 것입니다. 그냥 시도

echo ' 
    <tr> 
     <td>'.$odrnum.'</td> 
     <td>'.$odrstatus.'</td> 
     <td>'.$odrtype.'</td> 
     <td>'.$custorder.'</td> 
     <td> 
      <div id="bcTarget_'.$odrnum.'"></div> 
     </td> 
     <script> 
     $(function(){$("#bcTarget_'.$odrnum.'").barcode("'.$row[1].'", "code39",{barWidth:2, barHeight:30});});</script> 
    </tr>'; 
+0

나는, 구문 분석 오류를 받고 있어요를 사용할 수 있습니다

봅니다 고유 한 선택에 대한 귀하의 ID를 만들려면 오류가있는 위치를 찾으십시오. – eternityhq

+0

@eternityhq 내 나쁜 ** x2 ** 롤, 업데이트 된 코드 확인 –

+0

그게 효과가! 당신은 오늘의 영웅입니다. :) 내가 할 수 있으면 나는 당신을 upvote했다! – eternityhq

0

는 u는이 코드

<div class="bcTarget" rel="4874214545"></div> 
//rel= 'barcode digits' 

자바 스크립트

$(document).ready(function() { 
$(".bcTarget").each(function() { 
var bcdigits = $(this).attr('rel'); 
$(this).barcode(bcdigits, "code39",{barWidth:2, barHeight:30}); 

}); 
});