मेरे डेटाबेस में 2 टेबल हैं

टेबल उपयोगकर्ता
user_id स्वतः

टेबल2 गैलरी
आईडी ऑटो
user_id

जब उपयोगकर्ता उपयोगकर्ता तालिका में जानकारी सम्मिलित करते समय पंजीकरण करता है, जो काम करता है मैं user_id को गैलरी user_id फ़ील्ड में भेजना चाहता हूं।

मैंने निम्नलिखित कोशिश की है:

$connection = dbconnect();
$stmt = $connection->prepare('INSERT INTO users(user_email, username, user_pwd) VALUES (?,?,?)');
$stmt->bind_param('sss', $email, $username, $password);
$stmt->execute();
$stmt->close();


$connection = dbconnect();
$last_row = mysqli_insert_id($connection);


$connection = dbconnect();
$stmt2 = $connection->prepare('INSERT INTO gallery(user_id) VALUES (?)');
$stmt2->bind_param('s', $last_row);
$stmt2->execute();
$stmt2->close();
0
Case 14 अक्टूबर 2016, 05:27
समस्या क्या है?
 – 
Yash Mehta
14 अक्टूबर 2016, 05:50
यह पहली क्वेरी को ठीक चलाता है लेकिन यह अगली तालिका के उपयोगकर्ता आईडी में अंतिम आईडी नहीं डालेगा
 – 
Case
14 अक्टूबर 2016, 05:57
उपयोगकर्ता तालिका से अधिकतम (user_id) का चयन करें और फिर इसे गैलरी तालिका में डालें।
 – 
Yash Mehta
14 अक्टूबर 2016, 06:01

1 उत्तर

सबसे बढ़िया उत्तर

सबसे पहले, आपको अंतिम सम्मिलित आईडी प्राप्त करने के लिए एक नया कनेक्शन बनाने की आवश्यकता नहीं है। इसके बजाय आप इसे पसंद कर सकते हैं:

$stmt = $connection->prepare('INSERT INTO users(user_email, username, user_pwd) VALUES (?,?,?)');
$stmt->bind_param('sss', $email, $username, $password);
$stmt->execute();
$last_row = $stmt->insert_id;
$stmt->close();

$connection = dbconnect();
$stmt2 = $connection->prepare('INSERT INTO gallery(user_id) VALUES (?)');
$stmt2->bind_param('s', $last_row);
$stmt2->execute();
$stmt2->close();

साथ ही, यदि आपका user_id एक पूर्णांक है, तो आप $last_row को "i" के रूप में बाँध सकते हैं।

इनके अलावा, आपको वह त्रुटि दिखानी चाहिए जो आपको अपने प्रश्न में मिल रही है।

1
Ekin 14 अक्टूबर 2016, 06:01
इसमें कोई त्रुटि नहीं है, यह सिर्फ गैलरी तालिका में अंतिम आईडी सम्मिलित नहीं करता है
 – 
Case
14 अक्टूबर 2016, 06:10
क्या आपने इसके बजाय $stmt->insert_id; कोशिश की है? @मामला :)
 – 
Ekin
14 अक्टूबर 2016, 06:13
ध्यान दें कि मुझे लगता है, यह बंद होने से पहले ही काम करेगा ()
 – 
Ekin
14 अक्टूबर 2016, 06:13
बढ़िया :) हाँ, मैं उससे पूरी तरह से संबंधित हो सकता हूं, एक अच्छा है @ केस
 – 
Ekin
14 अक्टूबर 2016, 06:16