Joomla.it Forum
Componenti per Joomla! => Gestione e-commerce => : spaino 12 Apr 2010, 11:32:37
-
Sul sito i miei utenti possono pagare sia con carta di credito che paypal, ma succede che con carta di credito il redirect porti a questa pagina
http://www.antizanzare.net/paypal1.jpg
mentre se decidono di pagare con paypal vengono reindirizzati a questa pagina
http://www.antizanzare.net/paypal2.jpg
Il codice che c'è dietro a entrambi i metodi è lo stesso, non capisco perchè mi porti a 2 link diversi
per il pagamento con carta di credito sarebbe più corretto il secondo link, ma non so come fare
-
usi 2 codici pagamento diversi?
con che nome classe?
con che codice esteso?
ciao
jk
-
usi 2 codici pagamento diversi?
con che nome classe?
con che codice esteso?
ciao
jk
il codice è univoco per entrambi: PP
il nome della classe di pagamento per entrambi è: ps_paypal
il codice aggiuntivo (sempre uguale per entrambi è il seguente)
<?php
$db1 = new ps_DB();
$q = "SELECT country_2_code FROM #__vm_country WHERE country_3_code='".$user->country."' ORDER BY country_2_code ASC";
$db1->query($q);
$url = "https://www.paypal.com/cgi-bin/webscr";
$tax_total = $db->f("order_tax") + $db->f("order_shipping_tax");
$discount_total = $db->f("coupon_discount") + $db->f("order_discount");
$post_variables = Array(
"cmd" => "_ext-enter",
"redirect_cmd" => "_xclick",
"upload" => "1",
"business" => PAYPAL_EMAIL,
"receiver_email" => PAYPAL_EMAIL,
"item_name" => $VM_LANG->_('PHPSHOP_ORDER_PRINT_PO_NUMBER').": ". $db->f("order_id"),
"order_id" => $db->f("order_id"),
"invoice" => $db->f("order_number"),
"amount" => round( $db->f("order_subtotal")+$tax_total-$discount_total, 2),
"shipping" => sprintf("%.2f", $db->f("order_shipping")),
"currency_code" => $_SESSION['vendor_currency'],
"address_override" => "1",
"first_name" => $dbbt->f('first_name'),
"last_name" => $dbbt->f('last_name'),
"address1" => $dbbt->f('address_1'),
"address2" => $dbbt->f('address_2'),
"zip" => $dbbt->f('zip'),
"city" => $dbbt->f('city'),
"state" => $dbbt->f('state'),
"country" => $db1->f('country_2_code'),
"email" => $dbbt->f('user_email'),
"night_phone_b" => $dbbt->f('phone_1'),
"cpp_header_image" => $vendor_image_url,
"return" => SECUREURL ."index.php?option=com_virtuemart&page=checkout.result&order_id=".$db->f("order_id"),
"notify_url" => SECUREURL ."administrator/components/com_virtuemart/notify.php",
"cancel_return" => SECUREURL ."index.php",
"undefined_quantity" => "0",
"test_ipn" => PAYPAL_DEBUG,
"pal" => "NRUBJXESJTY24",
"no_shipping" => "1",
"no_note" => "1"
);
if( $page == "checkout.thankyou" ) {
$query_string = "?";
foreach( $post_variables as $name => $value ) {
$query_string .= $name. "=" . urlencode($value) ."&";
}
vmRedirect( $url . $query_string );
} else {
echo '<form action="'.$url.'" method="post" target="_blank">';
echo '<input type="image" name="submit" src="https://www.paypal.com/en_US/i/btn/x-click-but6.gif" border="0" alt="Click to pay with PayPal - it is fast, free and secure!" />';
foreach( $post_variables as $name => $value ) {
echo '<input type="hidden" name="'.$name.'" value="'.htmlspecialchars($value).'" />';
}
echo '</form>';
}
?>
-
se usi un unico codice di pagamento come fai a dire che possono scegliere due pagamenti diversi? hai forse posto male la domanda?
-
ho creato due voci con lo stesso codice, ma chiamate in modo diverso, portano entrambe a paypal, una si chiama "Carta di Credito", l'altra "Paypal"
-
Sul sito i miei utenti possono pagare sia con carta di credito che paypal, ma succede che con carta di credito il redirect porti a questa pagina
http://www.antizanzare.net/paypal1.jpg
mentre se decidono di pagare con paypal vengono reindirizzati a questa pagina
http://www.antizanzare.net/paypal2.jpg
Il codice che c'è dietro a entrambi i metodi è lo stesso, non capisco perchè mi porti a 2 link diversi
per il pagamento con carta di credito sarebbe più corretto il secondo link, ma non so come fare
continuo a non capire:
ma allora vengono rediretti o "vorresti" che fossero rediretti su pagine diverse?
-
l'utente può scegliere fra 2 forme di pagamento distinte sul mio sito: carta di credito e paypal
Quando deve pagare vede proprio due voci distinte, cioè può cliccare o su carta di credito oppure su paypal. Nella realtà però si tratta dello stesso metodo di pagamento che ho camuffato solo con due nomi diversi, perchè in realtà è sempre il pagamento tramite paypal
Gli utenti in entrambi i casi vengono già re-direzionati verso la pagina di paypal, ma mentre per la forma di pagamento paypal classica vengono reindirizzati verso una pagina che permette l'immissione diretta dei dati della carta di credito, con la forma di pagamento carta di credito vengono reindirizzati ad una pagina in cui è difficile capire che anche da lì si può pagare con paypal.
L'esempio l'ho mostrato nei 2 link.
-
se guardi adesso trovi 2 ordini miei di prova, ho scelto nel primo carta, nel secondo paypal, ma in entrambi i casi visualizzo la stessa pagina del tuo esempio paypal1.jpg.
poi ti dò un consiglio: hai messo l'intestazione del tuo logo in paypal, se NON vuoi che l'utenti "scappi" perchè vede il messaggio minatorio del browser che dice di oggetti "protetti e non" mescolati nella stessa pagina devi usare un sito https: che contenga l'immagine , e visto che il tuo NON lo è usa un servizio free come sslpic.com per depositare l'immagine come anche consigliato direttamente da paypal nelle sue istruzioni, proprio usando quel sito...
-
a volte visualizzo la stessa pagina, a volte invece sono come ti ho mostrato nei due link
a cosa può essere dovuto?
per quanto riguarda l'immagine ti ringrazio del prezioso consiglio, lo faccio subito
è importantissimo per me avere questo tipo di feedback
-
allora continuando coi feedback, traduci gli "stati" pending etc etc in italiano, e verifica la code page dei caratteri che al posto delle a accentate visualizzo i soliti caratteracci strani nella email di conferma,
per quanto riguarda la schermata non lo so perchè lo faccia, se lo facesse sempre sarebbe MOLTO interessante perchè è una domanda che si pongono in molti in tutti i forum di VM in giro per il mondo, sembra che paypal lo faccia solo per qualche stato.
quelo che ho visto spesso e non capisco come si possa fare è il link di "continua con carta di credito" che in molti casi diventa un pulsante invece che un link.
penso che alla fine sia lo stesso problema di google che allo stesso dominio rispondono un sacco di server con ip diversi e magari in qualcuno di questi la loro configurazione è leggermente diversa.
infatti nel tuo account di paypal nel profilo puoi decidere di spuntare di poter usare la carta (senza registrazione di un nuovo utente paypal) o solo paypal di utenti registrati, ma NON di andare direttamente in quella pagina, ho cercato per mari e monti e non ho mai trovato come farlo direttamente;
se ci riesci oppure trovi in che condizione si verifica posta pure la soluzione che farai felici migliaia di persone
ciao
jk
-
allora continuando coi feedback, traduci gli "stati" pending etc etc in italiano, e verifica la code page dei caratteri che al posto delle a accentate visualizzo i soliti caratteracci strani nella email di conferma,
per quanto riguarda la schermata non lo so perchè lo faccia, se lo facesse sempre sarebbe MOLTO interessante perchè è una domanda che si pongono in molti in tutti i forum di VM in giro per il mondo, sembra che paypal lo faccia solo per qualche stato.
quelo che ho visto spesso e non capisco come si possa fare è il link di "continua con carta di credito" che in molti casi diventa un pulsante invece che un link.
penso che alla fine sia lo stesso problema di google che allo stesso dominio rispondono un sacco di server con ip diversi e magari in qualcuno di questi la loro configurazione è leggermente diversa.
infatti nel tuo account di paypal nel profilo puoi decidere di spuntare di poter usare la carta (senza registrazione di un nuovo utente paypal) o solo paypal di utenti registrati, ma NON di andare direttamente in quella pagina, ho cercato per mari e monti e non ho mai trovato come farlo direttamente;
se ci riesci oppure trovi in che condizione si verifica posta pure la soluzione che farai felici migliaia di persone
ciao
jk
dove trovo il file con gli stati da modificare?
e soprattutto come verifico la code page per eliminare quei caratteri stupidi?
-
caratteri: nel pannello di controllo del tuo hosting in quello di joomla e in quello di VM e... prove
traduzione: nel pannello di controllo di VM
-
ho inserito il logo su SSLpic.com, mi è arrivato il link via e-mail, ho personalizzato la pagina paypal col nuovo logo, ma il redirect presenta lo stesso problema, ossia comprare il messaggio di "oggetti protetti"
devo agire sul pannello di VM?
-
no, va messo nel codice esteso del pagamento, all'interno della chiamata al pulsante paypal, okkio che deve iniziare per https:// verifica che ci sia la "S", funziona, lo uso spesso.
per il discorso della chiamata alla pagina dei dati della carta o dell'account mi avevi incuriosito e così ho scoperto PERCHE' lo fà (le cose più semplici sono sempre le migliori) adesso trovo come fare... ti aggiornerò...
-
ti ringrazio moltissimo per l'aiuto che mi stai dando ;)
-
altra cosa anomala: una volta che l'utente viene re-direzionato sulla pagina di paypal non compare la scritta "numero ordine: 01" ma solamente ":01"
-
il problema sono i cookies che paypal crea.
la prima volta che l'utente utilizza paypal gli appare la schermata coi dati per la carta, dopo solo la seconda.
cancelli i cookies e ritorna come prima. siccome paypal è un servizio a pagamento, ovviamente cercano di far in modo che l'utente utilizzi il servizio che danno loro che gli frutta soldini e non quello degli altri circuiti.
il problema è cancellare i cookies del dominio .paypal.com almeno quello che si chiama cookie_check che contiene le informazioni "start", siccome sono di un dominio non tuo per problemi di sicurezza non puoi cancellarli da php e se utilizzi javascript (per quello che ho provato io) hai sempre i messaggi minatori dei browser di esecuzione di contenuto attivo.
a questo punto vedi tu cosa fare...
ciao
jk