そうです、データベースの1つのテーブルに配列があります。この配列を分解して、その1ビットを使用してデータベース内の別のテーブルから情報を取得し、その情報を含む電子メールを送信できるようにする必要があります。
テーブル内の私の配列は次のようになります
30-1、
30は製品ID、1は数量です。(購入した商品の数量)
私はマペットで、これを間違えたことがありますか?
//Get product_id_array of item purchased
$sql = mysql_query("SELECT product_id_array FROM transactions WHERE id='$orderID'")or die(mysql_error());
while($row = mysql_fetch_array($sql)){
$prod_quant_array = $row['product_id_array'];
}
//Explode prod_quant_array
(explode("-", $prod_quant_array));
$product_id = $prod_quant_array[0];
$product_quantity = $prod_quant_array[1];
これで2つの変数が得られると思いました。
$product_id
30になり、$product_quantity
1になります
次に、この情報を使用して、別のテーブルからより多くの情報を取得しようとしています。
$sql = mysql_query("SELECT product_name, product_price FROM products WHERE id='$product_id'")or die(mysql_error());
while($row = mysql_fetch_array($sql)){
$product_name = $row['product_name'];
$product_price = $row['product_price'];
}
ご覧のとおり、私のWHEREは$product_id変数を調べています。そのため、メールを送信しようとするとメールが届きますが、$product_name
またはが表示されません$product_price
。これらの他の変数は無視してください。これらは電子メールで正常に表示され、別のクエリから取得されます。
/////// Send Email ///////
$to = "" . $payer_email . "";
$subject = "Confirmation of your order";
$message .= "Dear " . $first_name . " " . $last_name . ",
This is an email to confirm your recent purchase of goods with Bloodlust.
You have ordered:
--------------------------------------------------
" . $product_name . ".
" . $product_price . "
--------------------------------------------------
Please keep this email for your records.
Please note that this is not a proof of transaction.
Thank you.";
$from = "no-reply@blood-lust.com";
$headers = "From:" . $from;
mail($to,$subject,$message,$headers);
私のexplode()はありますか?それとも何か他のものですか?
これは絶対に私の脳を殺しています、私は何時間もそれに取り組んできました。助けてください!:)