Re: [PHP] PHP to access shell script to print barcodes

2010-03-24 Thread Peter Lind
The problem you're getting is that your web-server interprets the
request as a request for a normal file and just sends it - in effect,
you're not outputting the postscript file, you're just sending the
.php file. Normally, you'll only get your php executed if the file
requested is a .php or .phtml - unless you've changed your server
config.

Try creating a serveps.php that uses the header(Content-Disposition:
attachment; filename: 'serveps.ps') instead, see if that helps you.

Regards

On 24 March 2010 06:09, Rob Gould gould...@me.com wrote:
 Well, that did something, and it does sound like it should work.  I've 
 scoured the web and haven't found anyone with code that does what I'm trying 
 to do.

 I've got a working, hardcoded Postscript file here:

 http://www.winecarepro.com/kiosk/fast/shell/barcodemerge.ps

 But I need to somehow serve it with PHP, so I can change some variables in it.

 By putting headers in place with PHP, and then doing an echo of the 
 postscript, I get postscript errors (though Preview doesn't tell me what the 
 error is):

 http://www.winecarepro.com/kiosk/fast/shell/serverps.ps

 Trying to trick the web-browser into thinking it's receiving Postscript from 
 a PHP file is tricky.  I don't know what to do next.

 Here's the code I was using in the above url:  
 http://www.winecarepro.com/kiosk/fast/shell/serveps.php.zip

 It's not clear to me if the server is parsing the postscript first and then 
 serving it, or if the server is server the postscript as-is and the browser 
 sends it to Preview which interprets it.

 I basically want to replicate the functionality found here:

 http://blog.maniac.nl/webbased-pdf-lto-barcode-generator/



 On Mar 23, 2010, at 5:37 PM, Peter Lind wrote:

 You can create a .php script that sets a proper header to make the
 browser download the file rather than display it. That also allows you
 to set the filename for the download. What you'd need to do is include
 something like:

 header(Content-Disposition: attachment; filename: 'barcodemerge.ps');

 That tells the browser to download the file. You can also try setting
 the content-type

 header('Content-type: application/postscript');

 Either of the above might do the trick for you.

 Regards
 Peter

 On 23 March 2010 22:10, Rob Gould gould...@me.com wrote:
 I love the idea of using PHP to insert data into Postscript.  I'm just not 
 sure how to make it happen.

 The good news is that I've got barcodes drawing just the way I need them:

 http://www.winecarepro.com/kiosk/fast/shell/barcodemerge.ps

 The bad news is that's all hard-coded Postscript.  I'd like to take your 
 suggestion and use PHP to loop-through and draw the barcodes - - - however, 
 if I put anything that resembles PHP in my .ps file, bad things happen.

 Anyone know the secret to creating a postscript .ps file that had PHP code 
 injecting data into it?

 Here's the source file that works.  Where PHP would be handy is at the very 
 bottom of the script

 http://www.winecarepro.com/kiosk/fast/shell/barcodemerge.ps.zip


 On Mar 23, 2010, at 7:48 AM, Richard Quadling wrote:

 On 23 March 2010 05:48, Jochem Maas joc...@iamjochem.com wrote:
 Op 3/23/10 3:27 AM, Rob Gould schreef:
 I am trying to replicate the functionality that I see on this site:

 http://blog.maniac.nl/webbased-pdf-lto-barcode-generator/

 Notice after you hit SUBMIT QUERY, you get a PDF file with a page of 
 barcodes.  That's _exactly_ what I'm after.
 Fortunately, the author gives step-by-step instructions on how to do 
 this on this page:

 http://blog.maniac.nl/2008/05/28/creating-lto-barcodes/


 So I've gotten through all the steps, and have created the 
 barcode_with_samples.ps file, and have it hosted here:

 http://www.winecarepro.com/kiosk/fast/shell/

 Notice how the last few lines contain the shell-script that renders the 
 postscript:

 #!/bin/bash

 BASE=”100″;
 NR=$BASE

 for hor in 30 220 410
 do
 ver=740
 while [ $ver -ge 40 ];
 do
 printf -v FNR “(%06dL3)” $NR
 echo “$hor $ver moveto $FNR (includetext height=0.55) code39 barcode”
 let ver=$ver-70
 let NR=NR+1
 done
 done


 I need to somehow create a PHP script that executes this shell script. 
  And after doing some research, it sounds like
 I need to use the PHP exec command, so I do that with the following file:

 http://www.winecarepro.com/kiosk/fast/shell/printbarcodes.php

 Which has the following script:

 ?php

 $command=http://www.winecarepro.com/kiosk/fast/shell/barcode_with_sample.ps;;
 exec($command, $arr);

 echo $arr;

 ?


 And, as you can see, nothing works.  I guess firstly, I'd like to know:

 A)  Is this PHP exec call really the way to go with executing this shell 
 script?  Is there a better way?  It seems to me like it's not really 
 executing.

 that's what exec() is for. $command need to contain a *local* path to the 
 command in question, currently your
 trying to pass a url to bash ... which obviously doesn't do much.

 the shell script in question needs to have 

Re: [PHP] PHP to access shell script to print barcodes

2010-03-23 Thread Richard Quadling
On 23 March 2010 05:48, Jochem Maas joc...@iamjochem.com wrote:
 Op 3/23/10 3:27 AM, Rob Gould schreef:
 I am trying to replicate the functionality that I see on this site:

 http://blog.maniac.nl/webbased-pdf-lto-barcode-generator/

 Notice after you hit SUBMIT QUERY, you get a PDF file with a page of 
 barcodes.  That's _exactly_ what I'm after.
 Fortunately, the author gives step-by-step instructions on how to do this on 
 this page:

 http://blog.maniac.nl/2008/05/28/creating-lto-barcodes/


 So I've gotten through all the steps, and have created the 
 barcode_with_samples.ps file, and have it hosted here:

 http://www.winecarepro.com/kiosk/fast/shell/

 Notice how the last few lines contain the shell-script that renders the 
 postscript:

 #!/bin/bash

 BASE=”100″;
 NR=$BASE

 for hor in 30 220 410
 do
 ver=740
 while [ $ver -ge 40 ];
 do
 printf -v FNR “(%06dL3)” $NR
 echo “$hor $ver moveto $FNR (includetext height=0.55) code39 barcode”
 let ver=$ver-70
 let NR=NR+1
 done
 done


 I need to somehow create a PHP script that executes this shell script.  
 And after doing some research, it sounds like
 I need to use the PHP exec command, so I do that with the following file:

 http://www.winecarepro.com/kiosk/fast/shell/printbarcodes.php

 Which has the following script:

 ?php

 $command=http://www.winecarepro.com/kiosk/fast/shell/barcode_with_sample.ps;;
 exec($command, $arr);

 echo $arr;

 ?


 And, as you can see, nothing works.  I guess firstly, I'd like to know:

 A)  Is this PHP exec call really the way to go with executing this shell 
 script?  Is there a better way?  It seems to me like it's not really 
 executing.

 that's what exec() is for. $command need to contain a *local* path to the 
 command in question, currently your
 trying to pass a url to bash ... which obviously doesn't do much.

 the shell script in question needs to have the executable bit set in order to 
 run (either that or change to command to
 run bash with your script as an argument)

 I'd also suggest putting the shell script outside of your webroot, or at 
 least in a directory that's not accessable
 from the web.

 --
 PHP General Mailing List (http://www.php.net/)
 To unsubscribe, visit: http://www.php.net/unsub.php



I think this is a translation of the script to PHP.

?php
$BASE = 100;
$NR   = $BASE;

foreach(array(30, 220, 410) as $hor) {
$ver = 740;
while ($ver = 40) {
printf($hor $ver moveto (%06dL3) (includetext height=0.55) 
code39
barcode\n, $NR);
$ver -= 70;
++$NR;
}
}



It produces output like ...

30 740 moveto (000100L3) (includetext height=0.55) code39 barcode
30 670 moveto (000101L3) (includetext height=0.55) code39 barcode
30 600 moveto (000102L3) (includetext height=0.55) code39 barcode
30 530 moveto (000103L3) (includetext height=0.55) code39 barcode
30 460 moveto (000104L3) (includetext height=0.55) code39 barcode
30 390 moveto (000105L3) (includetext height=0.55) code39 barcode
30 320 moveto (000106L3) (includetext height=0.55) code39 barcode
30 250 moveto (000107L3) (includetext height=0.55) code39 barcode
30 180 moveto (000108L3) (includetext height=0.55) code39 barcode
30 110 moveto (000109L3) (includetext height=0.55) code39 barcode
30 40 moveto (000110L3) (includetext height=0.55) code39 barcode
220 740 moveto (000111L3) (includetext height=0.55) code39 barcode
220 670 moveto (000112L3) (includetext height=0.55) code39 barcode
220 600 moveto (000113L3) (includetext height=0.55) code39 barcode
220 530 moveto (000114L3) (includetext height=0.55) code39 barcode
220 460 moveto (000115L3) (includetext height=0.55) code39 barcode
220 390 moveto (000116L3) (includetext height=0.55) code39 barcode
220 320 moveto (000117L3) (includetext height=0.55) code39 barcode
220 250 moveto (000118L3) (includetext height=0.55) code39 barcode
220 180 moveto (000119L3) (includetext height=0.55) code39 barcode
220 110 moveto (000120L3) (includetext height=0.55) code39 barcode
220 40 moveto (000121L3) (includetext height=0.55) code39 barcode
410 740 moveto (000122L3) (includetext height=0.55) code39 barcode
410 670 moveto (000123L3) (includetext height=0.55) code39 barcode
410 600 moveto (000124L3) (includetext height=0.55) code39 barcode
410 530 moveto (000125L3) (includetext height=0.55) code39 barcode
410 460 moveto (000126L3) (includetext height=0.55) code39 barcode
410 390 moveto (000127L3) (includetext height=0.55) code39 barcode
410 320 moveto (000128L3) (includetext height=0.55) code39 barcode
410 250 moveto (000129L3) (includetext height=0.55) code39 barcode
410 180 moveto (000130L3) (includetext height=0.55) code39 barcode
410 110 moveto (000131L3) (includetext height=0.55) code39 barcode
410 40 moveto (000132L3) (includetext height=0.55) code39 barcode


No idea if that is accurate or not. If you can run the script by hand
once to confirm, then
-- 
-
Richard Quadling
Standing on the shoulders of some very clever giants!
EE : 

Re: [PHP] PHP to access shell script to print barcodes

2010-03-23 Thread Rob Gould
I love the idea of using PHP to insert data into Postscript.  I'm just not sure 
how to make it happen.

The good news is that I've got barcodes drawing just the way I need them:

http://www.winecarepro.com/kiosk/fast/shell/barcodemerge.ps

The bad news is that's all hard-coded Postscript.  I'd like to take your 
suggestion and use PHP to loop-through and draw the barcodes - - - however, if 
I put anything that resembles PHP in my .ps file, bad things happen.

Anyone know the secret to creating a postscript .ps file that had PHP code 
injecting data into it?

Here's the source file that works.  Where PHP would be handy is at the very 
bottom of the script

http://www.winecarepro.com/kiosk/fast/shell/barcodemerge.ps.zip


On Mar 23, 2010, at 7:48 AM, Richard Quadling wrote:

 On 23 March 2010 05:48, Jochem Maas joc...@iamjochem.com wrote:
 Op 3/23/10 3:27 AM, Rob Gould schreef:
 I am trying to replicate the functionality that I see on this site:
 
 http://blog.maniac.nl/webbased-pdf-lto-barcode-generator/
 
 Notice after you hit SUBMIT QUERY, you get a PDF file with a page of 
 barcodes.  That's _exactly_ what I'm after.
 Fortunately, the author gives step-by-step instructions on how to do this 
 on this page:
 
 http://blog.maniac.nl/2008/05/28/creating-lto-barcodes/
 
 
 So I've gotten through all the steps, and have created the 
 barcode_with_samples.ps file, and have it hosted here:
 
 http://www.winecarepro.com/kiosk/fast/shell/
 
 Notice how the last few lines contain the shell-script that renders the 
 postscript:
 
 #!/bin/bash
 
 BASE=”100″;
 NR=$BASE
 
 for hor in 30 220 410
 do
 ver=740
 while [ $ver -ge 40 ];
 do
 printf -v FNR “(%06dL3)” $NR
 echo “$hor $ver moveto $FNR (includetext height=0.55) code39 barcode”
 let ver=$ver-70
 let NR=NR+1
 done
 done
 
 
 I need to somehow create a PHP script that executes this shell script.  
 And after doing some research, it sounds like
 I need to use the PHP exec command, so I do that with the following file:
 
 http://www.winecarepro.com/kiosk/fast/shell/printbarcodes.php
 
 Which has the following script:
 
 ?php
 
 $command=http://www.winecarepro.com/kiosk/fast/shell/barcode_with_sample.ps;;
 exec($command, $arr);
 
 echo $arr;
 
 ?
 
 
 And, as you can see, nothing works.  I guess firstly, I'd like to know:
 
 A)  Is this PHP exec call really the way to go with executing this shell 
 script?  Is there a better way?  It seems to me like it's not really 
 executing.
 
 that's what exec() is for. $command need to contain a *local* path to the 
 command in question, currently your
 trying to pass a url to bash ... which obviously doesn't do much.
 
 the shell script in question needs to have the executable bit set in order 
 to run (either that or change to command to
 run bash with your script as an argument)
 
 I'd also suggest putting the shell script outside of your webroot, or at 
 least in a directory that's not accessable
 from the web.
 
 --
 PHP General Mailing List (http://www.php.net/)
 To unsubscribe, visit: http://www.php.net/unsub.php
 
 
 
 I think this is a translation of the script to PHP.
 
 ?php
 $BASE = 100;
 $NR   = $BASE;
 
 foreach(array(30, 220, 410) as $hor) {
   $ver = 740;
   while ($ver = 40) {
   printf($hor $ver moveto (%06dL3) (includetext height=0.55) 
 code39
 barcode\n, $NR);
   $ver -= 70;
   ++$NR;
   }
 }
 
 
 
 It produces output like ...
 
 30 740 moveto (000100L3) (includetext height=0.55) code39 barcode
 30 670 moveto (000101L3) (includetext height=0.55) code39 barcode
 30 600 moveto (000102L3) (includetext height=0.55) code39 barcode
 30 530 moveto (000103L3) (includetext height=0.55) code39 barcode
 30 460 moveto (000104L3) (includetext height=0.55) code39 barcode
 30 390 moveto (000105L3) (includetext height=0.55) code39 barcode
 30 320 moveto (000106L3) (includetext height=0.55) code39 barcode
 30 250 moveto (000107L3) (includetext height=0.55) code39 barcode
 30 180 moveto (000108L3) (includetext height=0.55) code39 barcode
 30 110 moveto (000109L3) (includetext height=0.55) code39 barcode
 30 40 moveto (000110L3) (includetext height=0.55) code39 barcode
 220 740 moveto (000111L3) (includetext height=0.55) code39 barcode
 220 670 moveto (000112L3) (includetext height=0.55) code39 barcode
 220 600 moveto (000113L3) (includetext height=0.55) code39 barcode
 220 530 moveto (000114L3) (includetext height=0.55) code39 barcode
 220 460 moveto (000115L3) (includetext height=0.55) code39 barcode
 220 390 moveto (000116L3) (includetext height=0.55) code39 barcode
 220 320 moveto (000117L3) (includetext height=0.55) code39 barcode
 220 250 moveto (000118L3) (includetext height=0.55) code39 barcode
 220 180 moveto (000119L3) (includetext height=0.55) code39 barcode
 220 110 moveto (000120L3) (includetext height=0.55) code39 barcode
 220 40 moveto (000121L3) (includetext height=0.55) code39 barcode
 410 740 moveto (000122L3) (includetext height=0.55) code39 barcode
 410 

Re: [PHP] PHP to access shell script to print barcodes

2010-03-23 Thread Peter Lind
You can create a .php script that sets a proper header to make the
browser download the file rather than display it. That also allows you
to set the filename for the download. What you'd need to do is include
something like:

header(Content-Disposition: attachment; filename: 'barcodemerge.ps');

That tells the browser to download the file. You can also try setting
the content-type

header('Content-type: application/postscript');

Either of the above might do the trick for you.

Regards
Peter

On 23 March 2010 22:10, Rob Gould gould...@me.com wrote:
 I love the idea of using PHP to insert data into Postscript.  I'm just not 
 sure how to make it happen.

 The good news is that I've got barcodes drawing just the way I need them:

 http://www.winecarepro.com/kiosk/fast/shell/barcodemerge.ps

 The bad news is that's all hard-coded Postscript.  I'd like to take your 
 suggestion and use PHP to loop-through and draw the barcodes - - - however, 
 if I put anything that resembles PHP in my .ps file, bad things happen.

 Anyone know the secret to creating a postscript .ps file that had PHP code 
 injecting data into it?

 Here's the source file that works.  Where PHP would be handy is at the very 
 bottom of the script

 http://www.winecarepro.com/kiosk/fast/shell/barcodemerge.ps.zip


 On Mar 23, 2010, at 7:48 AM, Richard Quadling wrote:

 On 23 March 2010 05:48, Jochem Maas joc...@iamjochem.com wrote:
 Op 3/23/10 3:27 AM, Rob Gould schreef:
 I am trying to replicate the functionality that I see on this site:

 http://blog.maniac.nl/webbased-pdf-lto-barcode-generator/

 Notice after you hit SUBMIT QUERY, you get a PDF file with a page of 
 barcodes.  That's _exactly_ what I'm after.
 Fortunately, the author gives step-by-step instructions on how to do this 
 on this page:

 http://blog.maniac.nl/2008/05/28/creating-lto-barcodes/


 So I've gotten through all the steps, and have created the 
 barcode_with_samples.ps file, and have it hosted here:

 http://www.winecarepro.com/kiosk/fast/shell/

 Notice how the last few lines contain the shell-script that renders the 
 postscript:

 #!/bin/bash

 BASE=”100″;
 NR=$BASE

 for hor in 30 220 410
 do
 ver=740
 while [ $ver -ge 40 ];
 do
 printf -v FNR “(%06dL3)” $NR
 echo “$hor $ver moveto $FNR (includetext height=0.55) code39 barcode”
 let ver=$ver-70
 let NR=NR+1
 done
 done


 I need to somehow create a PHP script that executes this shell script.  
 And after doing some research, it sounds like
 I need to use the PHP exec command, so I do that with the following file:

 http://www.winecarepro.com/kiosk/fast/shell/printbarcodes.php

 Which has the following script:

 ?php

 $command=http://www.winecarepro.com/kiosk/fast/shell/barcode_with_sample.ps;;
 exec($command, $arr);

 echo $arr;

 ?


 And, as you can see, nothing works.  I guess firstly, I'd like to know:

 A)  Is this PHP exec call really the way to go with executing this shell 
 script?  Is there a better way?  It seems to me like it's not really 
 executing.

 that's what exec() is for. $command need to contain a *local* path to the 
 command in question, currently your
 trying to pass a url to bash ... which obviously doesn't do much.

 the shell script in question needs to have the executable bit set in order 
 to run (either that or change to command to
 run bash with your script as an argument)

 I'd also suggest putting the shell script outside of your webroot, or at 
 least in a directory that's not accessable
 from the web.

 --
 PHP General Mailing List (http://www.php.net/)
 To unsubscribe, visit: http://www.php.net/unsub.php



 I think this is a translation of the script to PHP.

 ?php
 $BASE = 100;
 $NR   = $BASE;

 foreach(array(30, 220, 410) as $hor) {
       $ver = 740;
       while ($ver = 40) {
               printf($hor $ver moveto (%06dL3) (includetext height=0.55) 
 code39
 barcode\n, $NR);
               $ver -= 70;
               ++$NR;
       }
 }



 It produces output like ...

 30 740 moveto (000100L3) (includetext height=0.55) code39 barcode
 30 670 moveto (000101L3) (includetext height=0.55) code39 barcode
 30 600 moveto (000102L3) (includetext height=0.55) code39 barcode
 30 530 moveto (000103L3) (includetext height=0.55) code39 barcode
 30 460 moveto (000104L3) (includetext height=0.55) code39 barcode
 30 390 moveto (000105L3) (includetext height=0.55) code39 barcode
 30 320 moveto (000106L3) (includetext height=0.55) code39 barcode
 30 250 moveto (000107L3) (includetext height=0.55) code39 barcode
 30 180 moveto (000108L3) (includetext height=0.55) code39 barcode
 30 110 moveto (000109L3) (includetext height=0.55) code39 barcode
 30 40 moveto (000110L3) (includetext height=0.55) code39 barcode
 220 740 moveto (000111L3) (includetext height=0.55) code39 barcode
 220 670 moveto (000112L3) (includetext height=0.55) code39 barcode
 220 600 moveto (000113L3) (includetext height=0.55) code39 barcode
 220 530 moveto (000114L3) (includetext height=0.55) code39 barcode
 220 460 

Re: [PHP] PHP to access shell script to print barcodes

2010-03-23 Thread Rob Gould
Well, that did something, and it does sound like it should work.  I've scoured 
the web and haven't found anyone with code that does what I'm trying to do.

I've got a working, hardcoded Postscript file here:

http://www.winecarepro.com/kiosk/fast/shell/barcodemerge.ps

But I need to somehow serve it with PHP, so I can change some variables in it.  

By putting headers in place with PHP, and then doing an echo of the 
postscript, I get postscript errors (though Preview doesn't tell me what the 
error is):

http://www.winecarepro.com/kiosk/fast/shell/serverps.ps

Trying to trick the web-browser into thinking it's receiving Postscript from a 
PHP file is tricky.  I don't know what to do next.

Here's the code I was using in the above url:  
http://www.winecarepro.com/kiosk/fast/shell/serveps.php.zip

It's not clear to me if the server is parsing the postscript first and then 
serving it, or if the server is server the postscript as-is and the browser 
sends it to Preview which interprets it.

I basically want to replicate the functionality found here:

http://blog.maniac.nl/webbased-pdf-lto-barcode-generator/



On Mar 23, 2010, at 5:37 PM, Peter Lind wrote:

 You can create a .php script that sets a proper header to make the
 browser download the file rather than display it. That also allows you
 to set the filename for the download. What you'd need to do is include
 something like:
 
 header(Content-Disposition: attachment; filename: 'barcodemerge.ps');
 
 That tells the browser to download the file. You can also try setting
 the content-type
 
 header('Content-type: application/postscript');
 
 Either of the above might do the trick for you.
 
 Regards
 Peter
 
 On 23 March 2010 22:10, Rob Gould gould...@me.com wrote:
 I love the idea of using PHP to insert data into Postscript.  I'm just not 
 sure how to make it happen.
 
 The good news is that I've got barcodes drawing just the way I need them:
 
 http://www.winecarepro.com/kiosk/fast/shell/barcodemerge.ps
 
 The bad news is that's all hard-coded Postscript.  I'd like to take your 
 suggestion and use PHP to loop-through and draw the barcodes - - - however, 
 if I put anything that resembles PHP in my .ps file, bad things happen.
 
 Anyone know the secret to creating a postscript .ps file that had PHP code 
 injecting data into it?
 
 Here's the source file that works.  Where PHP would be handy is at the very 
 bottom of the script
 
 http://www.winecarepro.com/kiosk/fast/shell/barcodemerge.ps.zip
 
 
 On Mar 23, 2010, at 7:48 AM, Richard Quadling wrote:
 
 On 23 March 2010 05:48, Jochem Maas joc...@iamjochem.com wrote:
 Op 3/23/10 3:27 AM, Rob Gould schreef:
 I am trying to replicate the functionality that I see on this site:
 
 http://blog.maniac.nl/webbased-pdf-lto-barcode-generator/
 
 Notice after you hit SUBMIT QUERY, you get a PDF file with a page of 
 barcodes.  That's _exactly_ what I'm after.
 Fortunately, the author gives step-by-step instructions on how to do this 
 on this page:
 
 http://blog.maniac.nl/2008/05/28/creating-lto-barcodes/
 
 
 So I've gotten through all the steps, and have created the 
 barcode_with_samples.ps file, and have it hosted here:
 
 http://www.winecarepro.com/kiosk/fast/shell/
 
 Notice how the last few lines contain the shell-script that renders the 
 postscript:
 
 #!/bin/bash
 
 BASE=”100″;
 NR=$BASE
 
 for hor in 30 220 410
 do
 ver=740
 while [ $ver -ge 40 ];
 do
 printf -v FNR “(%06dL3)” $NR
 echo “$hor $ver moveto $FNR (includetext height=0.55) code39 barcode”
 let ver=$ver-70
 let NR=NR+1
 done
 done
 
 
 I need to somehow create a PHP script that executes this shell script.  
 And after doing some research, it sounds like
 I need to use the PHP exec command, so I do that with the following file:
 
 http://www.winecarepro.com/kiosk/fast/shell/printbarcodes.php
 
 Which has the following script:
 
 ?php
 
 $command=http://www.winecarepro.com/kiosk/fast/shell/barcode_with_sample.ps;;
 exec($command, $arr);
 
 echo $arr;
 
 ?
 
 
 And, as you can see, nothing works.  I guess firstly, I'd like to know:
 
 A)  Is this PHP exec call really the way to go with executing this shell 
 script?  Is there a better way?  It seems to me like it's not really 
 executing.
 
 that's what exec() is for. $command need to contain a *local* path to the 
 command in question, currently your
 trying to pass a url to bash ... which obviously doesn't do much.
 
 the shell script in question needs to have the executable bit set in order 
 to run (either that or change to command to
 run bash with your script as an argument)
 
 I'd also suggest putting the shell script outside of your webroot, or at 
 least in a directory that's not accessable
 from the web.
 
 --
 PHP General Mailing List (http://www.php.net/)
 To unsubscribe, visit: http://www.php.net/unsub.php
 
 
 
 I think this is a translation of the script to PHP.
 
 ?php
 $BASE = 100;
 $NR   = $BASE;
 
 foreach(array(30, 220, 410) as $hor) {
   $ver = 740;
   

Re: [PHP] PHP to access shell script to print barcodes

2010-03-22 Thread Jochem Maas
Op 3/23/10 3:27 AM, Rob Gould schreef:
 I am trying to replicate the functionality that I see on this site:
 
 http://blog.maniac.nl/webbased-pdf-lto-barcode-generator/
 
 Notice after you hit SUBMIT QUERY, you get a PDF file with a page of 
 barcodes.  That's _exactly_ what I'm after.
 Fortunately, the author gives step-by-step instructions on how to do this on 
 this page:
 
 http://blog.maniac.nl/2008/05/28/creating-lto-barcodes/
 
 
 So I've gotten through all the steps, and have created the 
 barcode_with_samples.ps file, and have it hosted here:
 
 http://www.winecarepro.com/kiosk/fast/shell/
 
 Notice how the last few lines contain the shell-script that renders the 
 postscript:
 
 #!/bin/bash
 
 BASE=”100″;
 NR=$BASE
 
 for hor in 30 220 410
 do
 ver=740
 while [ $ver -ge 40 ];
 do
 printf -v FNR “(%06dL3)” $NR
 echo “$hor $ver moveto $FNR (includetext height=0.55) code39 barcode”
 let ver=$ver-70
 let NR=NR+1
 done
 done
 
 
 I need to somehow create a PHP script that executes this shell script.  And 
 after doing some research, it sounds like
 I need to use the PHP exec command, so I do that with the following file:
 
 http://www.winecarepro.com/kiosk/fast/shell/printbarcodes.php
 
 Which has the following script:
 
 ?php 
 
 $command=http://www.winecarepro.com/kiosk/fast/shell/barcode_with_sample.ps;;
 exec($command, $arr);
 
 echo $arr;
 
 ?
 
 
 And, as you can see, nothing works.  I guess firstly, I'd like to know:
 
 A)  Is this PHP exec call really the way to go with executing this shell 
 script?  Is there a better way?  It seems to me like it's not really 
 executing.

that's what exec() is for. $command need to contain a *local* path to the 
command in question, currently your
trying to pass a url to bash ... which obviously doesn't do much.

the shell script in question needs to have the executable bit set in order to 
run (either that or change to command to
run bash with your script as an argument)

I'd also suggest putting the shell script outside of your webroot, or at least 
in a directory that's not accessable
from the web.

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php