Barcode in Javascript einbinden

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Barcode in Javascript einbinden

    Hallo,

    habe folgendes problem. Ich möchte meinen barcode gerne mit übergeben. Leider funktioniert es nicht. Es wäre net wenn mir jemand helfen könnte.


    Hier mal der code

    JavaScript-Quellcode

    1. <script type="text/javascript">
    2. var bild = new Image();
    3. var bildquelle = "libs/barcode/barcode.php?codetype=Code39&size=40&text={/literal}' + {$showMailing.mailingCode} + '{/literal}";
    4. var win=null;
    5. bild.src = bildquelle;
    6. function printContainer(Adresse, printContent){
    7. win = window.open(Adresse, "Zweitfenster", "width=1200,height=800,left=250,top=100");
    8. self.focus();
    9. win.document.open();
    10. win.document.write('<'+'html'+'><'+'head'+'><'+'style'+'>');
    11. win.document.write('body, td { font-family: Verdana; font-size: 12pt;} .tip-wrap {float: left; margin-left: 20px;} .clear {clear: both;}');
    12. win.document.write('<'+'/'+'style'+'><'+'/'+'head'+'><'+'body'+'>');
    13. win.document.write();
    14. win.document.write('<'+'p'+'>');
    15. win.document.write('<b>Details</b><br>');
    16. win.document.write({/literal}'<b>JobNumber:</b> {$showMailing.mailingJobnummer}<br>'{literal});
    17. win.document.write({/literal}'<b>MailingID:</b> {$showMailing.mailingID}<br>'{literal});
    18. win.document.write({/literal}'<b>Product:</b> {$showMailing.mailingProduct}<br>'{literal});
    19. win.document.write({/literal}'<b>Customer:</b> {$showMailing.mailingCustomer}<br>'{literal});
    20. win.document.write({/literal}'Bild <img src='+bild.src+'>'{literal});
    21. win.document.write('<'+'/'+'p'+'>');
    22. win.document.write('<'+'/'+'body'+'><'+'/'+'html'+'>');
    23. win.document.close();
    24. win.print();
    25. win.close();
    26. }
    27. </script>
    Alles anzeigen
    Mit einen normalen bild geht es wenn man dies als Bildquelle eingibt. Aber ich benötige es so da sich der barcode stetig je nach id ändert. Ich würde mich sehr freuen wenn eine eine Lösung kennt.
    Riek-Media.com - Webhosting riek-media.com
  • Dragon25 schrieb:

    var bildquelle = "libs/barcode/barcode.php?codetype=Code39&size=40&text={/literal}' + {$showMailing.mailingCode} + '{/literal}";
    Die Zeile soll dir vermutlich dein Bild generieren? Das kann sie aber nicht, da es so nur ein String ist.
    Lösung (als Beispiel, da gibts schönere Wege):

    JavaScript-Quellcode

    1. var bildquelle = "<?php include('libs/barcode/barcode.php?codetype=Code39&size=40&text=irgendeinWert'); ?>";
    unter der Bedingung, dass dir die Datei barcode.php nur den Dateinamen zurückliefert.

    Da ich vermute, dass {$showMailing.mailingCode} aus dem JS kommt, musst du dir einen Workaround einfallen lassen, da das Javascript noch nicht verfügbar ist, wenn das PHP gerendert wird.
    Möglichkeit 1: du kannst diese Variable mit PHP auslesen,
    Möglichkeit 2: einen Ajax-Aufruf bauen
  • freeek schrieb:

    Die Zeile soll dir vermutlich dein Bild generieren? Das kann sie aber nicht, da es so nur ein String ist.
    Aber der String wird als src für das Image-Objekt gesetzt. Sollte schon so funktionieren: developer.mozilla.org/en-US/do…PI/HTMLImageElement/Image

    Was passiert denn, wenn du folgende Adresse direkt im Browser aufrufst? Kommt da das gewünschte Bild?

    Dragon25 schrieb:

    "libs/barcode/barcode.php?codetype=Code39&size=40&text={/literal}' + {$showMailing.mailingCode} + '{/literal}"
  • freeek schrieb:

    Dragon25 schrieb:

    var bildquelle = "libs/barcode/barcode.php?codetype=Code39&size=40&text={/literal}' + {$showMailing.mailingCode} + '{/literal}";
    Die Zeile soll dir vermutlich dein Bild generieren? Das kann sie aber nicht, da es so nur ein String ist.Lösung (als Beispiel, da gibts schönere Wege):

    JavaScript-Quellcode

    1. var bildquelle = "<?php include('libs/barcode/barcode.php?codetype=Code39&size=40&text=irgendeinWert'); ?>";
    unter der Bedingung, dass dir die Datei barcode.php nur den Dateinamen zurückliefert.

    Da ich vermute, dass [code]{$showMailing.mailingCode}[/code] aus dem JS kommt, musst du dir einen Workaround einfallen lassen, da das Javascript noch nicht verfügbar ist, wenn das PHP gerendert wird.
    Möglichkeit 1: du kannst diese Variable mit PHP auslesen,
    Möglichkeit 2: einen Ajax-Aufruf bauen


    Hi

    die variable {$showMailing.mailingCode} ist eine smarty vari die eine id enthält wie z.b 123456789

    Ich arbeite mit Smarty um php von html sauber zu trennen
    Riek-Media.com - Webhosting riek-media.com
  • Ich verstehe nicht so ganz was du mir damit sagen willst. Die url muss so aufgerufen werden da dadurch ein Barcode generiert wird der dann angezeigt werden soll. Öffne ich das ganze im browser als url habe ich einen barcode. Öffne ich es im Javascript wird mir kein barcode angezeigt. Dieser wird dort aber benötigt, da die Id sich bei jedem Eintrag ändert. Ich habe das ganze auch mit einem QR Code versucht und dieses vorher auf dem Server als png speichern lassen. Aber auch das war dann ohne erfolg.

    Beispiel mit dem Barcode vorher auf dem Server speichern:

    <img src='pfad/zum/logo.png'> --> funktioniert

    <img src='pfad/zum/qrcode.png'> --> funktioniert nicht

    Es wäre nett wenn du mal ein Beispiel hast
    Riek-Media.com - Webhosting riek-media.com