PHP / MySQL печать дубликатов этикеток

0

Используя аддон FPDF, я печатаю метки с использованием PHP/MySQL (http://www.fpdf.de/downloads/addons/29/). Я хотел бы, чтобы пользователь мог выбрать, сколько ярлыков будет напечатано. Например, если запрос выдает 10 записей, и пользователь хочет напечатать 3 ярлыка для каждой записи, он печатает их все в одном наборе. 1,1,1,2,2,2,3,3,3... и т.д.. Любые идеи?

     <?php
            require_once('auth.php'); 
            require_once('../config.php'); 
            require_once('../connect.php');     

            require('pdf/PDF_Label.php');

            $sql="SELECT $tbl_members.lastname, $tbl_members.firstname, 
    $tbl_members.username, $tbl_items.username, $tbl_items.itemname 
FROM $tbl_members, $tbl_items
WHERE $tbl_members.username = $tbl_items.username";
            $result=mysql_query($sql);

            if(mysql_num_rows($result) == 0){
            echo "Your search criteria does not return any results, please try again.";
            exit();
            }

            $pdf = new PDF_Label("5160");

            $pdf->AddPage();

            // Print labels
            while($rows=mysql_fetch_array($result)){
                $name = $rows['lastname'].', '.$rows['firstname';
                $item= $rows['itemname'];

                $text = sprintf("  * %s *\n  %s\n", $name, $item);
                $pdf->Add_Label($text);
            }

            $pdf->Output('labels.pdf', 'D');
            ?>
Теги:
pdf
fpdf
labels

1 ответ

1
Лучший ответ

Предполагая, что переменная типа $copies является целым числом того, сколько копий они хотят сделать, я бы сделал следующую модификацию:

// Print labels
while( $row = mysql_fetch_array( $result ) ){
  // Run Once for Each Result
    $name = $row['lastname'].', '.$row['firstname'];
    $item = $row['itemname'];
    $text = sprintf("  * %s *\n  %s\n", $name, $item);
    if( isset( $copies ) ) {
      // The Copies Variable exists
        for( $i=0 ; $i<$copies ; $i++ ) {
          // Run X times - Once for each Copy
            $pdf->Add_Label($text);
        }
    } else {
      // The Copies Variable does not exist - Assume 1 Copy
        $pdf->Add_Label($text);
    }
}

Это должно обеспечить требуемую функциональность.

  • 0
    Отлично! СПАСИБО!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню