Heim  >  Artikel  >  php教程  >  Zen Cart implementiert die Methode, der Bestellung eine reservierte Telefonnummer in PayPal hinzuzufügen

Zen Cart implementiert die Methode, der Bestellung eine reservierte Telefonnummer in PayPal hinzuzufügen

高洛峰
高洛峰Original
2017-01-05 11:38:311624Durchsuche

Das Beispiel in diesem Artikel beschreibt, wie Zen Cart der Bestellung eine reservierte Telefonnummer in PayPal hinzufügen kann. Teilen Sie es als Referenz mit allen:

Die Kontaktnummer im IPN-Rückgabewert von PayPal ist contact_phone. Voraussetzung ist, dass der Käufer in Ihrem Konto eine Telefonnummer reserviert hat Wenn keine Anforderung besteht, werden die Werte standardmäßig nicht zurückgegeben.

Diese Informationen werden jedoch nicht im PAYPAL-Zahlungs-Plug-in von Zen Cart abgerufen und das PAYPAL-Programm muss manuell geändert werden. Als nächstes werden wir Folgendes ändern:

1. Fügen Sie das Feld contact_phone in der Paypal-Tabelle hinzu

ALTER TABLE `paypal` ADD `contact_phone` VARCHAR( 50 ) NULL COMMENT '电话'

2. Ändern Sie die Datei paypal_functions.php ipn_create_order_array-Funktion

Diese Datei befindet sich im Verzeichnis ./includes/modules/zahlung/paypal

//增加
'contact_phone' => $_POST['contact_phone'],

Nach der Änderung ist sie wie folgt folgt

/**
 * Create order record from IPN data
 */
 function ipn_create_order_array($new_order_id, $txn_type) {
  $sql_data_array = array('order_id' => $new_order_id,
     'txn_type' => $txn_type,
     'module_name' => 'paypal (ipn-handler)',
     'module_mode' => 'IPN',
     'reason_code' => $_POST['reason_code'],
     'payment_type' => $_POST['payment_type'],
     'payment_status' => $_POST['payment_status'],
     'pending_reason' => $_POST['pending_reason'],
     'invoice' => $_POST['invoice'],
     'mc_currency' => $_POST['mc_currency'],
     'first_name' => $_POST['first_name'],
     'last_name' => $_POST['last_name'],
     'payer_business_name' => $_POST['payer_business_name'],
     'contact_phone' => $_POST['contact_phone'],
     'address_name' => $_POST['address_name'],
     'address_street' => $_POST['address_street'],
     'address_city' => $_POST['address_city'],
     'address_state' => $_POST['address_state'],
     'address_zip' => $_POST['address_zip'],
     'address_country' => $_POST['address_country'],
     'address_status' => $_POST['address_status'],
     'payer_email' => $_POST['payer_email'],
     'payer_id' => $_POST['payer_id'],
     'payer_status' => $_POST['payer_status'],
     'payment_date' => datetime_to_sql_format($_POST['payment_date']),
     'business' => $_POST['business'],
     'receiver_email' => $_POST['receiver_email'],
     'receiver_id' => $_POST['receiver_id'],
     'txn_id' => $_POST['txn_id'],
     'parent_txn_id' => $_POST['parent_txn_id'],
     'num_cart_items' => $_POST['num_cart_items'],
     'mc_gross' => $_POST['mc_gross'],
     'mc_fee' => $_POST['mc_fee'],
     'settle_amount' => $_POST['settle_amount'],
     'settle_currency' => $_POST['settle_currency'],
     'exchange_rate' => $_POST['exchange_rate'],
     'notify_version' => $_POST['notify_version'],
     'verify_sign' => $_POST['verify_sign'],
     'date_added' => 'now()',
     'memo' => $_POST['memo']
     );
  return $sql_data_array;
}

3. Um das contact_phone im Bestellinhalt der Hintergrundverwaltung zu sehen, müssen Sie die Datei paypal_admin_notification.php ändern

Diese Datei befindet sich in ./includes/. Fügen Sie den folgenden Inhalt zu

im Verzeichnis „modules/zahlung/paypal“ hinzu:

$output .= &#39;<tr><td class="main">Contact Phone:</td>&#39;;
$output .= &#39;<td class="main">&#39;.$ipn->fields[&#39;contact_phone&#39;].&#39;</td></tr>&#39;;

Ich hoffe, dieser Artikel wird für alle hilfreich sein PHP-Programmdesign basierend auf dem Zend-Framework.

Weitere verwandte Artikel über die Methode von Zen Cart, der Bestellung eine reservierte Telefonnummer in Paypal hinzuzufügen, finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn