قم بإدراج بيانات مماثلة في جدولين باستخدام لغة php
سؤال
لدي الكود التالي الذي أستخدمه لإدراج بيانات النموذج في جدول واحد في قاعدة البيانات الخاصة بي.`
function insert_interests($uid, $interests) {
/* first, we'll delete any entries this user already has in the table */
purge_lookup("jss_users_interests_table", $uid);
/* now create the sql insert query */
global $db;
$db->query(create_checkbox_query($interests, "jss_users_interests_table", $uid));
}
/* helper function for insert_interests(). removes all rows in $table with $uid */
function purge_lookup($table, $uid) {
global $db;
$db->query("DELETE FROM $table WHERE users_id = '".$db->escape($uid)."'");
}
/* helper function for insert_interests(). generates the actual SQL query */
function create_checkbox_query($arr, $table, $uid) {
$q = "INSERT INTO $table (users_id, subcategories_id) VALUES";
foreach ($arr as $check) {
$q .= " ( '$uid' , $check )" . ",";
}
/* remove the last comma and return */
return substr($q, 0, -1);
}`
في أعقاب هذا الكود، أرغب في استخدام نفس بيانات النموذج المقترنة ببيانات أخرى في جدول آخر لإدراج سجل جديد في جدول مختلف.إليك البنية لكلا الجدولين.
jss_users_interests_table
- users_id
- subcategories_id
jss_info_requests_table
- users_id
- Provider_id
- subcategories_id
jss_providers_signments_table
- Provider_id
- subcategories_id
إذن ما الذي يجب علي فعله بعد إدخال البيانات في ملف jss_users_interests_table
يتم إدراج نفس البيانات مع كل منهما subcategories_id's
مُتَجَانِس provider_id
من jss_provider_signment_table داخل ال jss_info_requests_table.منطقي؟هل أزعج الأمر وأجعله معقدًا؟
أي مساعدة في بناء الجملة ستكون رائعة.شكرًا!
المحلول
قد يعمل SQL هذا.
INSERT INTO jss_info_requests_table
(users_id, provider_id, subcategories_id)
SELECT a.users_id,
b.provider_id, b.subcategories_id FROM
jss_users_interests_table a,
jss_providers_assignments_table b
WHERE a.subcategories_id =
b.subcategories_id AND a.users_id =
[USERID]
لا تنتمي إلى StackOverflow