How to: PHP get input tag with name="encypted"

Hi,

I have this bit of code:

<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
    <input type="hidden" name="cmd" value="_s-xclick">
    <table>
        <tbody><tr><td><input type="hidden" name="on0"></td></tr>
        <tr><td><input type="hidden" name="os0" value="option_0"></td>
        </tr><tr><td></td><td>Number of payments 3</td></tr>
        <tr><td></td><td>Start payments At Checkout</td></tr><tr><td></td><td><table><tbody><tr><th align="LEFT">Due*</th><th align="LEFT">Amount</th></tr>
        <tr><td>Every 1 Month (x 3)</td><td align="right">$897.00 USD</td></tr>
        <tr><td></td><td colspan="2" align="right">Total  $2,691.00 USD</td></tr></tbody></table>
        </td></tr><tr><td colspan="3"><i>*We calculate payments from the date of checkout.<i></i></i></td></tr>
        </tbody></table>
    <input type="hidden" name="currency_code" value="USD">
    <input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----MIIIQQYJKoZIhvcNAQcEoIIIMjCCCC4CAQExggEwMIIBLAIBADCBlDCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQ=-----END PKCS7-----
">
    <table><tbody><tr><td align="center"><i>Sign up for</i></td></tr><tr><td><input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_installment_plan_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!" style="border: 0px;"></td></tr></tbody></table>
    <img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>

Open in new window


I want to use PHP to extract the <input /> tag where name="encrypted". I think it's easier in jQuery but I'm trying to find out how to do this with PHP.

The other question I had to was how do I change the src="https://www.paypalobjects.com/en_US/i/btn/btn_installment_plan_LG.gif" to some other gif I have on my server?

Thanks,
Victor
Victor KimuraSEO, Web DeveloperAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
Ray PaseurConnect With a Mentor Commented:
You might want to consider the logic flow here.  It looks like what you have there is an encrypted PayPal button, meant to be used "as is" in your web site.  I am not sure that changing it is a good idea.  But that aside, here is the code that will do those two things.
http://www.laprbass.com/RAY_temp_vkimura2007.php

<?php // RAY_temp_vkimura2007.php
error_reporting(E_ALL);
echo '<pre>';

// SEE http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/Q_28354594.html#a39828759

$html = <<<EOD
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
    <input type="hidden" name="cmd" value="_s-xclick">
    <table>
        <tbody><tr><td><input type="hidden" name="on0"></td></tr>
        <tr><td><input type="hidden" name="os0" value="option_0"></td>
        </tr><tr><td></td><td>Number of payments 3</td></tr>
        <tr><td></td><td>Start payments At Checkout</td></tr><tr><td></td><td><table><tbody><tr><th align="LEFT">Due*</th><th align="LEFT">Amount</th></tr>
        <tr><td>Every 1 Month (x 3)</td><td align="right">$897.00 USD</td></tr>
        <tr><td></td><td colspan="2" align="right">Total  $2,691.00 USD</td></tr></tbody></table>
        </td></tr><tr><td colspan="3"><i>*We calculate payments from the date of checkout.<i></i></i></td></tr>
        </tbody></table>
    <input type="hidden" name="currency_code" value="USD">
    <input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----MIIIQQYJKoZIhvcNAQcEoIIIMjCCCC4CAQExggEwMIIBLAIBADCBlDCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQ=-----END PKCS7-----
">
    <table><tbody><tr><td align="center"><i>Sign up for</i></td></tr><tr><td><input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_installment_plan_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!" style="border: 0px;"></td></tr></tbody></table>
    <img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>
EOD;

// GET THE INPUT TAG FOR name="encrypted"
$sig = 'name="encrypted"';
$arr = explode($sig, $html);
$arr = explode(PHP_EOL, $arr[1]);
$inp = '<input type="hidden" name="encrypted"' . $arr[0] . $arr[1];
echo htmlentities($inp);
echo PHP_EOL;

// REPLACE THE IMAGE TAG
$old = 'https://www.paypalobjects.com/en_US/i/btn/btn_installment_plan_LG.gif';
$new = 'path/to/your.gif';
$out = str_replace($old, $new, $html);
echo htmlentities($out);
echo PHP_EOL;

Open in new window

HTH, ~Ray
0
 
GaryCommented:
Are you asking how to do this in the browser? You can't do this in the browser with PHP.
0
 
Ray PaseurCommented:
PHP is used to generate the HTML document, so if this is something that is part of your HTML from a PHP script on your server, you already have the value in the HTML.  The form is submitted to PayPal by HTML on the client machine.  Some additional info here:
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/A_11271-Understanding-Client-Server-Protocols-and-Web-Applications.html

As far as changing the image, just change the src= attribute of the tag.  Easy!
0
Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 
Victor KimuraSEO, Web DeveloperAuthor Commented:
@Cathal. No, it's PHP. PHP is server based.

@Ray
I get that from an ajax callback. So I get that in a PHP variable first based off of a curl call to Paypal. So I can manipulate that form. I just need only the essentials returned since it's a custom shopping cart.

All the buttons are dynamic based on what the user selects and then .ajax() is called and then from the server using PHP I call curl() and then I get some returned variables from Paypal and that's one of the variable values (the <form>) I get back.

So how I can extract this information. Some sample code would help me. =)
0
 
Ray PaseurCommented:
You make a cURL call to paypal and get an HTML string back?  Try printing it out!  You will want to use "view source" to look at it.
0
 
Victor KimuraSEO, Web DeveloperAuthor Commented:
@Ray, yeah, I did. =) It's in the first post. Posting it again.

<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
    <input type="hidden" name="cmd" value="_s-xclick">
    <table>
        <tbody><tr><td><input type="hidden" name="on0"></td></tr>
        <tr><td><input type="hidden" name="os0" value="option_0"></td>
        </tr><tr><td></td><td>Number of payments 3</td></tr>
        <tr><td></td><td>Start payments At Checkout</td></tr><tr><td></td><td><table><tbody><tr><th align="LEFT">Due*</th><th align="LEFT">Amount</th></tr>
        <tr><td>Every 1 Month (x 3)</td><td align="right">$897.00 USD</td></tr>
        <tr><td></td><td colspan="2" align="right">Total  $2,691.00 USD</td></tr></tbody></table>
        </td></tr><tr><td colspan="3"><i>*We calculate payments from the date of checkout.<i></i></i></td></tr>
        </tbody></table>
    <input type="hidden" name="currency_code" value="USD">
    <input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----MIIIQQYJKoZIhvcNAQcEoIIIMjCCCC4CAQExggEwMIIBLAIBADCBlDCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQ=-----END PKCS7-----
">
    <table><tbody><tr><td align="center"><i>Sign up for</i></td></tr><tr><td><input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_installment_plan_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!" style="border: 0px;"></td></tr></tbody></table>
    <img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>

Open in new window


I want to use PHP to extract the <input /> tag where name="encrypted". I think it's easier in jQuery but I'm trying to find out how to do this with PHP.

The other question I had to was how do I change the src="https://www.paypalobjects.com/en_US/i/btn/btn_installment_plan_LG.gif" to some other gif I have on my server?
0
 
Victor KimuraSEO, Web DeveloperAuthor Commented:
@Ray, thanks! That works! =)
0
 
Ray PaseurCommented:
Victor: Thanks for the points.  Hope you're having good luck with your project! ~Ray
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.