views:

89

answers:

2

I have the following code in my registration page to go to a paypal button. But when I click on the button it just refreshes the page.

Is their something I am missing? I should be able to include a paypal button on an aspx page right?

    <asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <asp:Panel runat="server" ID="pnlRegisterPage" CssClass="registerPage">
        <table>
          <tr>
            <td><p>Plain text</p></td>
            <td>
                <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
                <input type="hidden" name="cmd" value="_s-xclick">
                <input type="hidden" name="hosted_button_id" value="Z8TACKRHQR722">
                <table>
                <tr><td><input type="hidden" name="on0" value="Registration Type">Registration Type</td></tr><tr><td><select name="os0">
                    <option value="Team">Team $80.00</option>
                    <option value="Individual">Individual $40.00</option>
                </select> </td></tr>
                </table>
                <input type="hidden" name="currency_code" value="USD">
                <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
                <img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
                </form>
            </td>
        </tr>
    </table>

</asp:Panel>
</asp:Content>

Master Page

<body>
    <form id="form1" runat="server">
    <asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
    </asp:ToolkitScriptManager>
    <div class="masterbody">
        <center>
            <asp:Image runat="server" ID="imgLogo" ImageUrl="" /></center>
        <div class="menubar">
            <div class="loginview">                                   
            <asp:LoginView ID="MenuBar" runat="server">
                <AnonymousTemplate>                                                             
                </AnonymousTemplate>
                <LoggedInTemplate>
                </LoggedInTemplate>
            </asp:LoginView>
            </div>
        </div>        
        <div>
            <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
            </asp:ContentPlaceHolder>
        </div>
    </div>

    <div class="footer"></div>
    </form>        
</body>
+3  A: 

The master page shows that ContentPlaceHolder1 is inside the ASP.NET runat="server" form so you won't be able to place the PayPal form inside that region. You'll need to arange it so that the PayPal form is not inside any other form.

A possible solution found here: http://www.codersbarn.com/post/Solution-to-ASPNET-Form---PayPal-Problem.aspx but I don't think you'll be able to have any postback events on any page with the form rendering disabled.

Daniel Renshaw
It doesn't affect postbacks because all you are doing is toggling forms. Usually, this is done on submitting the transaction :-)
IrishChieftain
A: 

Did you go through the PayPal API integration example, this sample might help.

KMan
http://www.codersbarn.com/post/Solution-to-ASPNET-Form---PayPal-Problem.aspx suggests the PayPal SDK may not work with ASP.NET 2.
Daniel Renshaw