Solved

adding paypal to existing cgi script

Posted on 2004-04-22
6
200 Views
Last Modified: 2013-12-25
Hi

I have an existing shopping cart on my site.  I would like to add Paypal as an option for payment.  Right now the choices for payment are credit card on line, credit card through fax and cheque by mail.  I would like to subsitute both credit card options with the paypal option but keep the cheque by mail.

I know this is a very vague question but is there a sub that I can add to my existing cgi script? This is an older Webgenie script by the way and I don't want to spend anymore money on buying a new cart.

any help would be appreciated.

Thanks

hummer
0
Comment
Question by:hummerrecord
  • 3
  • 3
6 Comments
 
LVL 3

Expert Comment

by:cjmos
ID: 10895374
Hi, take a look at
Business::PayPal::IPN

http://search.cpan.org/~sherzodr/Business-PayPal-IPN-1.94/IPN.pm
0
 

Author Comment

by:hummerrecord
ID: 10895759
Hi cjmos

Thanks for the redirect....however...I must admit I am a know just enought to be dangerous.....so although I understand some of this....I am still not sure how to implement it into the shopping cart script.

0
 

Author Comment

by:hummerrecord
ID: 10922572
okay

well I am a step closer and actually have figured out how to add the paypal code to my existing cgi script....the code is as follows

$i = 0; # Just a number to define form elements
   foreach $item (@items)
   {
      if ($item)
      {
         if ($item =~ /,/)
         {
            $i++;
            @components = split (/,/, "$item");
            $qty = @components[1];
            $price = @components[2];
            $product = @components[3];
            $catNo = @components[4];
            $weight = @components[5]*$qty;
            $totWeight += $weight;
            $tot = $qty*$price;
            $gtot += $tot;
            $tot = &Monify ($tot);
            $price = &Monify ($price);

   print "<input type=hidden name=item_name_1 value=\"$product\">\n";
   print "<input type=hidden name=item_number_1  value=\"$catNo\">\n";
   print "<input type=hidden name=amount_1 value=\"$price\">\n";
   print "<input type=hidden name=quantity_1 value=\"$qty\">\n";
           }
      }
   }
 
   print "<input type=image src=\"http://images.paypal.com/images/x-clickbut01.gif\" name=submit alt=\"Make payments with PayPal - it?s fast,free and secure\">\n";
   print "</form>\n";

the problem is only the 1st item is being passed to paypal....I need to increment the name values....for example

item_number_1, item_number_2, item_number_3 etc....for eachof the names in the form inputs.....
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 3

Expert Comment

by:cjmos
ID: 10930058


hummerrecord, the $i variable is used to increment item_numer for each item. Replace your code with.


$i = 0; # Just a number to define form elements
   foreach $item (@items)
   {
      if ($item)
      {
         if ($item =~ /,/)
         {
            $i++;
            @components = split (/,/, "$item");
            $qty = @components[1];
            $price = @components[2];
            $product = @components[3];
            $catNo = @components[4];
            $weight = @components[5]*$qty;
            $totWeight += $weight;
            $tot = $qty*$price;
            $gtot += $tot;
            $tot = &Monify ($tot);
            $price = &Monify ($price);

   print "<input type=hidden name=item_name_$i value=\"$product\">\n";
   print "<input type=hidden name=item_number_$i  value=\"$catNo\">\n";
   print "<input type=hidden name=amount_$i value=\"$price\">\n";
   print "<input type=hidden name=quantity_$i value=\"$qty\">\n";
          }
      }
   }

   print "<input type=image src=\"http://images.paypal.com/images/x-clickbut01.gif\" name=submit alt=\"Make payments with PayPal - it?s fast,free and secure\">\n";
   print "</form>\n";
0
 
LVL 3

Accepted Solution

by:
cjmos earned 500 total points
ID: 10930090
In case you can't see any difference,

notice the use of $i int the lines

 print "<input type=hidden name=item_name_$i value=\"$product\">\n";
 print "<input type=hidden name=item_number_$i  value=\"$catNo\">\n";
 print "<input type=hidden name=amount_$i value=\"$price\">\n";
 print "<input type=hidden name=quantity_$i value=\"$qty\">\n";
0
 

Author Comment

by:hummerrecord
ID: 10930341
Hi cjmos

You are right....I figured it out yesterday...but thank you for you input....

take care

hummer
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Batch, VBS, and scripts in general are incredibly useful for repetitive tasks.  Some tasks can take a while to complete and it can be annoying to check back only to discover that your script finished 5 minutes ago.  Some scripts may complete nearly …
For both online and offline retail, the cross-channel business is the most recent pattern in the B2C trade space.
Learn the basics of while and for loops in Python.  while loops are used for testing while, or until, a condition is met: The structure of a while loop is as follows:     while <condition>:         do something         repeate: The break statement m…
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)

706 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now