0

私が達成したいのは、ユーザーがドロップダウンリストからユーザー名を選択し、そのアカウントを使用して購入したいアイテムを選択できるようにすることです。1つの問題は、PayPalボタンがクリックされたときに、ユーザー名がカスタムフィールドに保存されないが、トランザクションは正常に実行されることです。

PayPalボタンコード:

    // Get information from database
    $result = mysql_query("SELECT username FROM account WHERE mainusername='".$username."'");

while($row = mysql_fetch_array($result)) {

echo "<option>".$row['username']."</option>";

}
?>
</select>
</tr>
</td>
<tr>
<td>
<input type="hidden" name="on0" value="itemforsale">
<select name="os0">
    <option value="shirt">shirt $5.55 USD</option>
    <option value="short">short $31.55 USD</option>
    <option value="skirt">skirt $62.75 USD</option>
</select>
</td>
</tr>
</table>
<br />
<input type="hidden" name="custom" value="
<?php 
if(isset($_POST['getusername'])) {

$getusername = $_POST['getusername']; 
echo "".$getusername."";

}
?>
">
<input type="hidden" name="currency_code" value="USD">
<input type="image" src="https://www.sandbox.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.sandbox.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>
4

1 に答える 1

0

ユーザー名を反復処理するときに「option」値を設定するのを忘れています。次のようになります。

$result = mysql_query("SELECT username FROM account WHERE mainusername='".$username."'");
while($row = mysql_fetch_array($result)) {
     echo "<option value='".$row['username']."'>".$row['username']."</option>";
}

これにはjQueryを使用することもお勧めします。ページをリロードする必要はありません。

    <script type="text/javascript">
        $(document).ready(function() { 
            $("#username_select").change(function() { 
                $("#paypal_custom").val($(this).val());
            });
        });
    </script>

ユーザー名IDを「username_select」に設定し、Paypalの「custom」非表示入力IDを「paypal_custom」に設定します。

于 2013-03-27T14:29:15.647 に答える