आप प्रत्येक पुनरावृत्ति में लूप के अंदर अपने सभी तीन चरों को ओवरराइट कर रहे हैं, इसलिए आपको केवल एक परिणाम मिल रहा है (जो कि अंतिम डेटा सेट था जिसे while
के अंदर निष्पादित किया गया था। लूप।
मूल रूप से 3 चीजें हैं जो आप अपनी समस्या को हल करने के लिए कर सकते हैं।
1. लूप से प्राप्त होने वाले सभी परिणामों को संग्रहीत करने के लिए एक सरणी का उपयोग करें
while ($y=mysqli_fetch_array($sql)) {
$mrk[] = implode("", DekripCBC($y['nama_merk']));
$mdl[] = implode("", DekripCBC($y['nama_model']));
$wrn[] = implode("", DekripCBC($y['warna']));
}
2. array_push
का उपयोग करके लूप से प्राप्त होने वाले सभी परिणामों को संग्रहीत करने के लिए एक पूर्व-निर्धारित सरणी का उपयोग करें ।
/**There are 3 ways to define an empty array. You can use any of the following
1.$emptyArray = [];
2.$emptyArray = array();
3.$emptyArray = (array) null;
* */
$dataSet =[];
while ($y=mysqli_fetch_array($sql)) {
$data['mrk'] = implode("", DekripCBC($y['nama_merk']));
$data['mdl'] = implode("", DekripCBC($y['nama_model']));
$data['wrn'] = implode("", DekripCBC($y['warna']));
array_push($dataSet ,$data);
}
3. मानों को अपने वेरिएबल में जोड़ें
while ($y=mysqli_fetch_array($sql)) {
// I have added a seprator(,) for all the variables so that there will be a , after every result and it wouldn't make you confused at the end
$mrk .= implode("", DekripCBC($y['nama_merk'])).',';
$mdl .= implode("", DekripCBC($y['nama_model'])).',';
$wrn .= implode("", DekripCBC($y['warna'])).',';
}
मैं आपको विधि नंबर 1 या नंबर 2 का उपयोग करने की अत्यधिक अनुशंसा करता हूं।
मुझे आशा है कि इससे आपको अपनी समस्या का समाधान करने में मदद मिलेगी।
यदि आप क्वेरी का उपयोग करके एकाधिक आईडी खोजना चाहते हैं:(चूंकि मैंने टिप्पणियों में उल्लेख किया है, मैं इसे यहां जोड़ दूंगा।)
पूर्व:
//You have multiple ids that you get from the session.
$jns = [12,13,4,5];
//So now you can use a foreach loop to loop all the ids and use the query to get relevant data
foreach($jns as $id){
$sql = mysqli_query($kns, "Select stok.id_stok as id_stok, merk.nama_merk as nama_merk, model.nama_model as nama_model, stok.warna as warna FROM stok INNER JOIN model On stok.id_model=model.id_model INNER JOIN merk ON model.id_merk=merk.id_merk where id_stok = '$id' ") or die(mysqli_error($kns));
while ($y=mysqli_fetch_array($sql)) {
$mrk[] = implode("", DekripCBC($y['nama_merk']));
$mdl[] = implode("", DekripCBC($y['nama_model']));
$wrn[] = implode("", DekripCBC($y['warna']));
}
}
इस विधि से आप ऊपर वर्णित आईडी के लिए सभी डेटा प्राप्त कर सकते हैं और इसे सरणी को असाइन कर सकते हैं।