السلام عليكم
الاخوة الكرام ،
لدي قائمة منسدلة و قمت بعمل برنامج مع تقنية الاجاكس لكي يظهر لي قائمة أخرى مرتبط بالأولى.
و لكن :
عند ظهور القائمة الثانية ، هناك بعض الامور ايضا اريد استخراجها مستخدما المعلومات التي بداخل القائمة الثانية .
هنا توقفت تماما ..
عملت بعض الاشياء و اتوقع اني بالقرب من نقطة النهاية :
و إليكم الملفات :
ملف product.js
ملف index.php و الفورمكود:function Getproducts(str) { var xmlhttp; var str; str=document.getElementById("manufactures").value; if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else if (window.ActiveXObject) { // code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } else { alert("Your browser does not support XMLHTTP!"); } xmlhttp.onreadystatechange=function() { if(xmlhttp.readyState==4) { var info = xmlhttp.responseText; var data = info.split("~"); if(data[0]!='') { document.getElementById("productsview").innerHTML = data[0]; } document.getElementById("productsprice").value = ""; document.getElementById("productsdesc").value = ""; } } str=document.getElementById("manufactures").value; xmlhttp.open("GET","getdataajax.php"+"?action=getcatproducts&ccid="+escape(str),true); xmlhttp.send(null); } function GetDESC(str) { var xmlhttp; var str; str=document.getElementById("products").value; if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else if (window.ActiveXObject) { // code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } else { alert("Your browser does not support XMLHTTP!"); } xmlhttp.onreadystatechange=function() { if(xmlhttp.readyState==4) { var info = xmlhttp.responseText; var data = info.split("~"); if(data[0]!='') { document.getElementById("productsprice").value = data[0]; } if(data[1]!='') { document.getElementById("productsdesc").value = data[1]; } } } str=document.getElementById("products").value; xmlhttp.open("GET","getdataajax.php"+"?action=getproduct&pid="+escape(str),true); xmlhttp.send(null); }
و أخيرا ملف ال php الذي يقوم بعمليات الاستعلامكود:<form name="cats" id="editinfo_form" method="POST" action="login.php"> <label for="pcat">تصنيف المنتج :</label> <? $r2 = $db->select("SELECT * FROM cats"); echo "<select name='manufactures' id='manufactures' onchange='Getproducts(this.value);'>"; echo "<option value='0'>إختر التصنيف</option>"; while ($row=$db->get_row($r2, 'MYSQL_ASSOC')) { extract($row); echo "<option value='$id'>$name</option>"; } echo "</select>"; ?> <br /> <span id='productsview'> <select name='products' id='products' style="width:220px;"> <option value="">Select</option> </select></span> <br> <input type="text" name="productsprice" id="productsprice" size="20"/> <br> <textarea rows="7" cols="30" id="productsdesc" name="productsdesc"></textarea> <p><input type="submit" value=" إرسال الطلب " value="name" /></p> </form>
النتيجة التي أريد الوصول لها ، مرفقه بالأسفل كصورة .كود:if ($action == "getproduct"){ $r3 = $db->select("SELECT * FROM products WHERE pid='$pid'"); while ($row=$db->get_row($r3, 'MYSQL_ASSOC')) { extract($row); echo "<input type='text' name='productsprice' id='productsprice' value=$price size='20'>"; } } if ($action == "getcatproducts"){ //echo "<label for='productslist'>إسم المنتج :</label>"; $r2 = $db->select("SELECT * FROM products WHERE catid = '$ccid'"); echo "<select onchange='GetDESC(this.value);'>"; echo "<option value='0'>إختر اسم المنتج</option>"; while ($row=$db->get_row($r2, 'MYSQL_ASSOC')) { extract($row); $productid = $pid; echo "<option value='$productid'>$pname</option>"; } echo "</select>";
أتمنى التعليق على الموضوع و لكم مني جزيل الشكر و الامتنان ..
بحفظ الله ،


رد مع اقتباس
