Ho creato un pulsante PayPal non ospitato con un input di testo per consentire agli utenti di definire un importo da pagare. È un pulsante di abbonamento.Pulsante PayPal con 'min_amount' E 'set_customer_limit'
Ora il problema è che ci deve essere un importo minimo da pagare, dire 101 (CHF - franchi svizzeri).
In base ai documenti di PayPal HTML-Variables, ho la possibilità di aggiungere le seguenti variabili in input nascosti al mio modulo per farlo funzionare.
set_customer_limit
con un valore dimax_limit_own
min_amount
con un valore di101
Il set_customer_limit
funziona ma non il min_amount
. Qualsiasi importo è accettato
Ho aperto un ticket al supporto tecnico, ma nessuna risposta fino ad ora.
Ecco la mia forma:
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="cmd" value="_xclick-subscriptions">
<!-- //... -->
<input type="hidden" name="cancel_return" value="mydomain.com/cancel">
<input type="hidden" name="return" value="mydomain.com/paid">
<input type="hidden" name="token" value="<?php echo $token; ?>">
<input type="hidden" name="src" value="1">
<input type="text" name="a3" value="101.00">
<input type="hidden" name="p3" value="1">
<input type="hidden" name="t3" value="Y">
<input type="hidden" name="currency_code" value="CHF">
<input type="hidden" name="bn" value="PP-SubscriptionsBF:btn_subscribeCC_LG.gif:NonHostedGuest">
<!-- the concerned inputs -->
<input type="hidden" name="set_customer_limit" value="max_limit_own">
<input type="hidden" name="min_amount" value="101">
<!-- ---- -->
<input type="image" src="https://www.paypalobjects.com/de_DE/CH/i/btn/btn_subscribeCC_LG.gif" border="0" name="submit" alt="Jetzt einfach, schnell und sicher online bezahlen – mit PayPal.">
<img alt="" border="0" src="https://www.paypalobjects.com/de_DE/i/scr/pixel.gif" width="1" height="1">
</form>
Per quanto riguarda il momento, ho solo convalidare l'importo minimo con JavaScript, che non è davvero sicuro ...
EDIT
Come idea, potrei implementare un altro modulo (inviarlo da AJAX, onchange, onkeyup, qualunque cosa), che imposta l'importo minimo fornito dall'utente da ribalta il PayPal-modulo e metterlo in PayPal ingresso poi (impostato su nascosto di nuovo):
<input type="hidden" name="a3" value="<?php echo $_POST['pre_min_amount'] ?>">
In questo modo ho potuto validare l'importo minimo con PHP, prima di presentare il PayPal-modulo. Ma non mi sembra un modo pulito. Davvero contento se qualcuno potesse darmi un suggerimento!
'value =" {$ _POST ['pre_min_amount']} "' <- si dovrebbe disinfettare questo invece di scrivere $ _POST direttamente in html – Pharaoh
@Pharaoh non necessario perché I provalo con 'floatval' e se falso il modulo non va su –
Assumi questa stringa:' 200 'Passa il test' floatval() ', ma inietta ancora javascript. – Pharaoh