「 MassPay NVP example 」を使用してPaypalのmasspayをテストしていますが、コードを修正してMySqlデータベースからデータを入力するのに苦労しています。
基本的に、MySql にメール アドレス、支払い状況 (有料、未払い)、および残高を含むユーザー テーブルがあります。
CREATE TABLE `users` (
`user_id` int(10) unsigned NOT NULL auto_increment,
`email` varchar(100) collate latin1_general_ci NOT NULL,
`status` enum('unpaid','paid') collate latin1_general_ci NOT NULL default 'unpaid',
`balance` int(10) NOT NULL default '0',
PRIMARY KEY (`user_id`)
) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci
データ :
1 test1@example.net paid 100
2 test2@example.net unpaid 11
3 test3@example.net unpaid 20
4 test4@example.net unpaid 1
5 test5@example.net unpaid 20
6 test6@example.net unpaid 15
次に、未払い残高が 10 ドル以上のユーザーを選択するクエリを作成しました。
$conn = db_connect();
$query=$conn->query("SELECT * from users WHERE
balance >='10'
AND status = ('unpaid')");
私がしたいのは、クエリから返された各レコードに対して、以下のコードを入力することです。
今、修正する必要があると思われるコードは次のとおりです。
for($i = 0; $i < 3; $i++) {
$receiverData = array( 'receiverEmail' => "user$i@paypal.com",
'amount' => "example_amount",);
$receiversArray[$i] = $receiverData;
}
しかし、私はそれを動作させることができません.mysqli_fetch_arrayを使用してみてから、さまざまな方法で「user$i@paypal.com」を$row['email']に、「example_amount」をrow['balance']に置き換えましたコーディングですが、うまくいきません。また、上記の for ループで <3 としてクエリから取得された多くの行にループする必要があります。
したがって、私が探している最終結果は、 $nvpStr 文字列が次のように渡されることです。
$nvpStr = "&EMAILSUBJECT=test&RECEIVERTYPE=EmailAddress&CURRENCYCODE=USD&L_EMAIL0=$test2@example.net&L_Amt=11&L_EMAIL1=$test3@example.net&L_Amt=11&L_EMAIL2=$test3@example.net&L_Amt=20&L_EMAIL3=$test5@example.net&L_Amt=20&L_EMAIL0=$test6@example.net&L_Amt=15";
ありがとう