Uitleg

Eerst heb je een labelontwerp nodig, bestand eindigend op LWL.
Let wel op dat je een bestand voor jouw type label gebruikt.

In dit voorbeeld gebruik ik labeltype 99010 en het bestand:
Adres (99010).LWL (standaard labelbestand bestaande uit een simpel adresveld).

Als je het uiterlijk van de label wilt veranderen moet het gekozen bestand veranden in de Dymo label software.

Maak een nieuwe pagina aan met de naam: pagina.php en zet daarin deze code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
if($act=='labelwriter' && $nr){
$host = "localhost";           // hier vul je je host in
$username = "";          // hier vul je je username in
$password = "";          // hier vul je je password in
$database = "";        // hier vul je de database naam in

mysql_connect($host,$username,$password);    
mysql_select_db($database);
$query="SELECT * FROM bestelling where id = $nr";

  $sql=mysql_query($query) or die (mysql_error());
  
while ($obj=mysql_fetch_object($sql)) {
  $naam = $obj->naam;
  $straat = $obj->straat;
  $postcode = $obj->postcode;
  $plaats = $obj->plaats;
?>

 <form>
      <INPUT TYPE="BUTTON" NAME="PrintBtn" VALUE="Print Label" OnClick="PrintBtnClicked()">
    </form>

    <SCRIPT>
      function PrintBtnClicked()
      {
        var DymoAddIn, DymoLabel;
        DymoAddIn = new ActiveXObject('DYMO.DymoAddIn');
        DymoLabel = new ActiveXObject('DYMO.DymoLabels');

        if (DymoAddIn.Open('C:\\Documents and Settings\\All Users\\Documenten\\DYMO Label\\Label Files\\Adres (99010).LWL')) //locatie labelbestand, let op dubbele backslash!!
        {
          DymoLabel.SetAddress(1, '<?=$naam;?>\n<?=$straat;?>\n<?=$postcode;?>  <?=$plaats;?>');
          DymoAddIn.Print(1, true);
        }
        else
          alert('Error: Label file Not Found!');
       }
<?php
}
}

?>


Uitleg

Eerst wordt de rij uit de database bepaalt met de nr in de url en vorvolgens maakt het script verbinding met de database:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
if($act=='labelwriter' && $nr){
$host = "localhost";           // hier vul je je host in
$username = "";          // hier vul je je username in
$password = "";          // hier vul je je password in
$database = "";        // hier vul je de database naam in

mysql_connect($host,$username,$password);    
mysql_select_db($database);
$query="SELECT * FROM bestelling where id = $nr";

  $sql=mysql_query($query) or die (mysql_error());
  
while ($obj=mysql_fetch_object($sql)) {
  $naam = $obj->naam;
  $straat = $obj->straat;
  $postcode = $obj->postcode;
  $plaats = $obj->plaats;
?>

Vervolgens wordt de button aangemaakt die, wanneer je er op klikt, een javascript function aanroept.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<form>
      <INPUT TYPE="BUTTON" NAME="PrintBtn" VALUE="Print Label" OnClick="PrintBtnClicked()">
    </form>

    <SCRIPT>
      function PrintBtnClicked()
      {
        var DymoAddIn, DymoLabel;
        DymoAddIn = new ActiveXObject('DYMO.DymoAddIn');
        DymoLabel = new ActiveXObject('DYMO.DymoLabels');

Vervolgens kijkt het script of het bestand bestaat, zo ja, dan vult hij het adresveld in met de gegevens uit de database.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
     if (DymoAddIn.Open('C:\\Documents and Settings\\All Users\\Documenten\\DYMO Label\\Label Files\\Adres (99010).LWL')) //locatie labelbestand, let op dubbele backslash!!
        {
          DymoLabel.SetAddress(1, '<?=$naam;?>\n<?=$straat;?>\n<?=$postcode;?>  <?=$plaats;?>');
          DymoAddIn.Print(1, true);
        }
        else
          alert('Error: Label file Not Found!');
       }
<?php
}
}

?>

Rij 12 uit je mysql tabel kun je nu uitprinten met:
http://jouwsite.nl/pagina.php?act=labelwriter&nr=12

LabelWriter 400 Twin Turbo
Om op de linker rol te printen verander je: DymoAddIn.Print(1, true);
in: DymoAddIn.Print(0, true);
En voor auto-switch: DymoAddIn.Print(2, true);
(Dit heb ik zelf niet kunnen testen).

Let op dit script werkt alleen met IE!!

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Inleiding
  2. Uitleg

PHP tutorial opties

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.