تغطية مباشرة لأحداث منتدى الإعلام الجديد المقام بمدينة أبوظبي
هل تقترح تمديد مسابقة سوالف كاست؟

 

العودة   سوالف سوفت > قسم تطوير وبرمجة المواقع للمتقدمين > ويب 2.0 و البرمجية القياسية Ajax +XML+ CSS+ JavaScript وغيرها
المدوّنات البحث مشاركات اليوم اجعل كافة المشاركات مقروءة

رد  
 
LinkBack أدوات الموضوع
عضو نشيط
تاريخ التسجيل: Nov 2003-
#1 (permalink)  
كيف استدعي صفحه في ديف معين


السلام عليكم ورحمة الله وبركاته
انا حاب استخدم الاجاكس وحاب استغني عن الـفريم في تصميم لوحة التحكم
انا اريد ان استدعي صفحه في ديف معين ولكن طبعا بدون استخدام زر submit
اريد ان يكون هناك كلمه مثل اضغط هنا وبمجرد الضغط يفتح له صفحه في ديف
ارجو المساعده وشكرا






__________________
مع تحياتي
مرعب نجد غير متواجد حالياً   قديم 07-10-2008, 07:00 AM
رد مع اقتباس

تعتبر هذه المشاركه من افضل الحلول او الردود المنطقيه او العلميه لهذا الموضوع
عضو نشيط
تاريخ التسجيل: Oct 2008-
#2 (permalink)  

ضع هذا في مكان الجافا سكربت :

كود:
var xmlHttp
function open()
{
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
 {
 alert ("Browser does not support HTTP Request")
 return
 } 
var url="page.php?"
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged 
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
} 
function stateChanged() 
{ 
 if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 { 
 document.getElementById("divname").innerHTML=xmlHttp.responseText; 
 
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
return xmlHttp;
}
مع تغيير divname في :
كود:
 document.getElementById("divname").innerHTML=xmlHttp.responseText;
إلى الid الخاص بالديف يلي عملته
وكمان تغيير عنوان الصفحة يلي في :
كود:
var url="page.php?"
إلى الصفحة يلي تريدها
ولما تريد الأمر يشتغل كل ماعليك تشغل الفنكشن : open()
مثال مع رابط
كود بلغة HTML:
<a href="javascript: open()"> open</a>
انصحك تتعلم أجاكس حتى تستفيد أكثر و تفهم كل شي تمام






التعديل الأخير تم بواسطة : سعد السيد احمد بتاريخ 07-10-2008 الساعة 06:55 PM.
سعد السيد احمد غير متواجد حالياً   قديم 07-10-2008, 04:31 PM
رد مع اقتباس

عضو نشيط
تاريخ التسجيل: Nov 2003-
#3 (permalink)  

الف شكر لك اخوي سعد واشتغل معي تمام التمام
لكن باقي سؤال بسيط يعني لو انا عندي اكثر من رابط واريد استخدام نفس الفكره كيف اربطها بالكود السابق






__________________
مع تحياتي
مرعب نجد غير متواجد حالياً   قديم 07-10-2008, 04:48 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Oct 2008-
#4 (permalink)  

هناك أكثر من طريقة :
إما انك تعمل أكثر من فنكشن (أقصد فيها function open()) وتعدل على الصفحة يلي داخلها (وهذه الطريقة رح تكبر الملف خاصةً لو عندك روابط كثير لذلك ما انصحك فيها)

أو انك تخلي الفنكشن open تاخذ قيم يعني تخليها :
كود:
 
function open(page)
و تعدل :
كود:
 
var url="page.php?"
إلى
كود:
 
var url=page
وروابط الملفات تصير :
كود بلغة HTML:
 <a href="javascript: open(page.php)"> open</a>
مع تغيير page.php للملف يلي تريده ينفتح كل رابط له ملف خاص يفتحه







التعديل الأخير تم بواسطة : سعد السيد احمد بتاريخ 07-10-2008 الساعة 06:53 PM.
سعد السيد احمد غير متواجد حالياً   قديم 07-10-2008, 06:50 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Nov 2003-
#5 (permalink)  

اشكرك جدا على تفاعلك معي لكن مع الاسف الطريقه الاخيره لم تنجح معي






__________________
مع تحياتي
مرعب نجد غير متواجد حالياً   قديم 07-10-2008, 07:14 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Oct 2008-
#6 (permalink)  

أسف جدا هناك خطأ بسيط
اقتباس:
وروابط الملفات تصير :

كود بلغة HTML:
<a href="javascript: open(page.php)"> open</a>
عدلها إلى

كود بلغة HTML:
<a href="javascript: open('page.php')"> open</a>

جرب الان و إن شاء الله تشتغل






سعد السيد احمد غير متواجد حالياً   قديم 07-10-2008, 10:20 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Nov 2003-
#7 (permalink)  

جربت واشتغل معي لكن لا يعرض الصفحه المطلوبه بحيث يعطيني رساله تفيد بان الملف غير موجود والملف موجود فعلا وهذي الرساله اللي تطلع لي
Not Found

The requested URL /page.php&sid=0.8857974298298359 was not found on this server.

معليش اذا ازعجتك لكن صدقني انا حاولت اني ابحث عن الطريقه قبل كتابة الموضوع وانا فعلا جاهل في الاجاكس
ومره اخرى اكرر اعتذاري .






__________________
مع تحياتي
مرعب نجد غير متواجد حالياً   قديم 08-10-2008, 12:27 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Oct 2008-
#8 (permalink)  

معلش مافي مشكلة
انت ما غيرت الpage.php يلي موجودة في الرابط ؟:
<a href="javascript: open('page.php')"> open</a>
حددها على إنها الصفحة يلي تريد تفتحها
أو ممكن انت عملت صفحة بهذا الإسم ؟
على كل حال أنا بجرب اليوم وبرد لك خبر






سعد السيد احمد غير متواجد حالياً   قديم 08-10-2008, 02:38 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Nov 2003-
#9 (permalink)  

لا ابدا طال عمرك انا انشأت ملف page.php ووضعته في نفس المجلد لكن مع الاسف لم يتم استدعائه ويطلع لي رسالة الخطا بان الملف غير موجود
وشكرا






__________________
مع تحياتي
مرعب نجد غير متواجد حالياً   قديم 08-10-2008, 04:16 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Oct 2008-
#10 (permalink)  

أها خلص عرفت وين المشكلة
روح على السطر
كود PHP:
url=url+"&sid="+Math.random() 
وعدله حتى يصير
كود PHP:
url=url+"?&sid="+Math.random() 
وهو على كل حال ممكن الإستغناء عن هذا السطر لكن من الأفضل تركه حتى لا يكون عنوان الصفحة ثابت بالنسبة للمتصفح و يصير يعطي الصفحة القديمة المحفوظة في الملفات المؤقتة

أسف كان خطأي أني ما إنتبهت يوم عملت التعديل
المهم كل شي يشتغل تمام الان وبالتوفيق






سعد السيد احمد غير متواجد حالياً   قديم 08-10-2008, 01:44 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Nov 2003-
#11 (permalink)  

يعطيك العافيه ما قصرت واشتغل معي 100 %
واسفين على الازعاج وتقبل تحياتي






__________________
مع تحياتي
مرعب نجد غير متواجد حالياً   قديم 08-10-2008, 05:22 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Aug 2007-
#12 (permalink)  

الرجاء تجربة الكود الآتي:

كود PHP:
<script type="text/javascript">
<!--
//_________________________
var $id "text";

var 
$img_loading "images/loading.gif";
var 
$msg "<br>جاري التحميل...";
//_________________________
var http_request false;

include = function(
$url,$method,$send){
if(!
$url)return false;
if(!
$method)$method "GET";
if(!
$send)$send null;
if(!
$img_loading)$img_loading ""; else $img_loading "<img src='"+$img_loading+"' /> ";
document.getElementById($id).innerHTML $img_loading+$msg;
http_request false;
if (
window.XMLHttpRequest) { 
    
http_request = new XMLHttpRequest();
    if (
http_request.overrideMimeType) {
         
http_request.overrideMimeType('text/xml');
        }
    } else if (
window.ActiveXObject) { 
    
try {
        
http_request = new ActiveXObject("Msxml2.XMLHTTP");
        } 
catch (e) {
        
try {
        
http_request = new ActiveXObject("Microsoft.XMLHTTP");
        } 
catch (e) {}
    }
}
if (!
http_request) {
        
alert('Cannot create XMLHTTP');
        
document.getElementById($id).innerHTML "";
        return 
false;
    }
    
http_request.onreadystatechange alertContents;
    
http_request.open($method$urltrue);
    
http_request.setRequestHeader('Content-Type''text/html; charset:windows-1256');
    
http_request.send($send);
}
function 
alertContents() {
    if (
http_request.readyState == 4) {
        if (
http_request.status == 200) {
            
document.getElementById($id).innerHTML http_request.responseText;
        } else {
            
alert('There was a problem with the request.');
            
document.getElementById($id).innerHTML "";
            return 
false
        
}
    }
}
//-->
</script> 
كود زر الإظهار

كود PHP:
<a style="text-decoration: none" href="#" onclick="include('TARGET.PHP')">Open</a>
<
div align="center" id="text"></div
مع تغيير TARGET.PHP إلى الصفحة المطلوبة






Sniper4dz غير متواجد حالياً   قديم 10-10-2008, 08:35 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Nov 2003-
#13 (permalink)  

مشكوووووووور على المساعده وجزاك الله الف خير






__________________
مع تحياتي
مرعب نجد غير متواجد حالياً   قديم 10-10-2008, 10:50 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Feb 2008-
#14 (permalink)  

اهلا اخوانى
شكرا على هذة الاكواد وفعلا الكود الثانى يعمل 100 %
ولا كن اريد معرفة ما الذيادة فى هذة الاكواد عن استخدام iframe فى html
و include فى php
وما المتميز فى استخدام هذة الاكواد






__________________
Creative Designer
BrainStorm غير متواجد حالياً   قديم 11-10-2008, 04:17 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Feb 2008-
#15 (permalink)  

ممكن مساعدة فى الكود
مثال (لنك1) (لنك2)

وعند الضغط على لنك 1 يظهر المحتوى اللى اريدة فى DIV معين بالصفحة

وعند الضغط على لنك 2 يظهر المحتوى اللى اريدة فى DIV اخر بالصفحة

كيفية تحديد ال dvi معبن يظهر بداخلة المحتوى عند الضغط على اللنك
وارجوا عدم تجاهل المشاركة الاولى






__________________
Creative Designer

التعديل الأخير تم بواسطة : BrainStorm بتاريخ 11-10-2008 الساعة 05:17 AM.
BrainStorm غير متواجد حالياً   قديم 11-10-2008, 04:32 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Oct 2008-
#16 (permalink)  

اقتباس:
المشاركة الأصلية كتبت بواسطة BrainStorm مشاهدة المشاركة
اهلا اخوانى
شكرا على هذة الاكواد وفعلا الكود الثانى يعمل 100 %
ولا كن اريد معرفة ما الذيادة فى هذة الاكواد عن استخدام iframe فى html
و include فى php
وما المتميز فى استخدام هذة الاكواد
هذه الأكواد تقوم بجلب الصفحة باستخدام تقنية الأجاكس (ajax) بحيث لن تلاحظ أن الصفحة تقوم بعمل ما عند إستخدامها بينما في فتح الصفحات بالطريقة العادية كما تعرف سوف يكون هناك مثل إعادة تحميل
والاجاكس مفيد جداً في إرسال و إستقبال البيانات خاصة في البيانات التي تتطلب سرعة (مثل هذا الرد السريع )
لكن طبعا ليس من الجيد إستخدام الاجاكس دائما حيث سوف تلاحظ أنه أن زر العودة (back) و التحديث (refresh) و حتى عنوان الصفحة سوف يبقى للصفحة القديمة و هذا يعبر من عيوب الاجاكس
اقتباس:
يوجد مشكلة بالكود الثانى عند وضع
هذا الكود
<a style="text-decoration: none" href="#" onclick="include('link1.php')">link1</a>
<
div align="center" id="text"></div>

ووضعة مرة اخرى
<a style="text-decoration: none" href="#" onclick="include('link2.php')">link2</a>
<
div align="center" id="text"></div>

اللنك الاول يفتح محتوى link1.php
وعند الضغط على link2 يظهر علامة التحميل ثم يظهر خطأ
There was a problem with the request.
وارجوا عدم تجاهل المشاركة الاولى
أنا لم أجرب هذا الكود الثاني وليس لدي الوقت للبحث المشكلة أتركه لصاحبه






سعد السيد احمد غير متواجد حالياً   قديم 11-10-2008, 04:44 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Feb 2008-
#17 (permalink)  

لقد تم حل هذة المشكلة
اقتباس:
يوجد مشكلة بالكود الثانى عند وضع
هذا الكود
<a style="text-decoration: none" href="#" onclick="include('link1.php')">link1</a>
<
div align="center" id="text"></div>

ووضعة مرة اخرى
<a style="text-decoration: none" href="#" onclick="include('link2.php')">link2</a>
<
div align="center" id="text"></div>

اللنك الاول يفتح محتوى link1.php
وعند الضغط على link2 يظهر علامة التحميل ثم يظهر خطأ
There was a problem with the request.

والعيب من عدم وجود الصفحة التى قمت بكتابتها فى النك لذالك قمت بحذف هذا الجزء من المشاركة
ولكن يوجد مشاكل
اول شىء
اريد تحديد كل لنك وتحديد ال div التى اريد فتح اللنك بها
ثانى شىء
انظر الصورة المرفقة
ما هذة الاسهم الموجودة بالصورة
ثالث شىء
ماذا لو اردت فتح لنك بهذا المنظر
<a style="text-decoration: none" href="#" onclick="include('center.php?cat=page.php')">goto</a>
ويوجد ملف center.php وبداخلة كود اختصار الصفحات
هذة المشاكل على الكود الثانى فى هذة المشاركة
الحل -------------->






الصور المصغرة للصور المرفقة
اضغط على الصورة لعرض أكبر

الاســـم:	error.JPG‏
المشاهدات:	23
الحجـــم:	15.2 كيلوبايت
الرقم:	42748  
__________________
Creative Designer

التعديل الأخير تم بواسطة : BrainStorm بتاريخ 11-10-2008 الساعة 05:49 AM.
BrainStorm غير متواجد حالياً   قديم 11-10-2008, 05:39 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Oct 2008-
#18 (permalink)  

استخدم هذا بعد التعديل عليه حتى تقوم بتحديد الديف يلي تريد يظهر فيه الصفحة:
كود:
var xmlHttp
function open(page,divid)
{
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
 {
 alert ("Browser does not support HTTP Request")
 return
 } 
var url=page
url=url+"?&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged 
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
} 
function stateChanged() 
{ 
 if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 { 
 document.getElementById(divid).innerHTML=xmlHttp.responseText; 
 
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
return xmlHttp;
}
وغير في الرابط هذا الpage.php للصفحة و divname للid تبع الdiv ولو تريد تستخدم ال get ('center.php?cat=page.php') مافي أي مشكلة
كود بلغة HTML:
<a href="javascript: open('page.php,divname')"> open</a>






سعد السيد احمد غير متواجد حالياً   قديم 11-10-2008, 02:26 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Feb 2008-
#19 (permalink)  

شكرا اخى ولكن لم يعمل الكود






__________________
Creative Designer
BrainStorm غير متواجد حالياً   قديم 12-10-2008, 03:04 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Oct 2008-
#20 (permalink)  

عفوا نسيت أني ادخل الفنكشن stateChanged داخل open حتى تأخذ قيمة الdivid وكذلك خطأ بسيط في الرابط
المهم كود الجافا سكربت :
كود:
 
var xmlHttp
function open(page,divid)
{
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
 {
 alert ("Browser does not support HTTP Request")
 return
 } 
 
var url=page
url=url+"?&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
function stateChanged() 
{ 
 if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 { 
 document.getElementById(divid).innerHTML=xmlHttp.responseText; 
 
}
}
} 
function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
return xmlHttp;
}
والرابط يصير :
كود بلغة HTML:
<a href="javascript: open('open.php','divname')"> open</a>
مع تغيير open.php لاسم الصفحة الراد فتحها و divname للid الخاص بالdiv يلي تريد فتح الصفحة فيه







التعديل الأخير تم بواسطة : سعد السيد احمد بتاريخ 12-10-2008 الساعة 12:10 PM.
سعد السيد احمد غير متواجد حالياً   قديم 12-10-2008, 12:08 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Feb 2008-
#21 (permalink)  

شكرا اخى والكود الان يعمل تمام
ولكن لو اردت فتح صفحة اخرى فى div اخر فى الامر الواحد
كود بلغة HTML:
<a href="javascript: open('open.php','divname')(open2.php','divname2')"> open</a>






__________________
Creative Designer
BrainStorm غير متواجد حالياً   قديم 12-10-2008, 05:36 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Oct 2008-
#22 (permalink)  

ما شاء الله عليك كل ما أقول خلص هذا الموضوع خلصت أسئلته وماأتوقع أحد يطرح شي جديد تجي و تجيب سؤال
أحسن طريقة حتى تشغل أكثر من فنكش في نفس الوقت هي أنك تحط فنكشن يجمع كل الفنكشنات (العمليات (حلوة جمع الإنكليزي) ) فيه و عند النقر يشتغل الفنكشن المجمع يعني بالنسبة لهذا الموضوع يصير:
كود:
function mulitopen(page1,div1,page2,div2)
{
open(page1,div1);
open(page2,div2);
}
والرابط يصير :
كود بلغة HTML:
<a href="javascript: mulitopen('c.php','divname','c.php','divname2')"> open</a>
طيب الان كل شي تمام صح ؟ بعد التجريب لأ ما فتح غير في div واحد !!؟ إيش المشكلة
بعد التجريب و الفحص الظاهر أنه لايمكن تنفيذ أمرين أجاكس في نفس الوقت تماماً
والحل؟؟
نخلي فاصل بينهم مثلاً نحط alert حيث ان مربع الحوار هذا يوقف العمليات حتى تضغط على موافق:
كود:
 
function mulitopen(page1,div1,page2,div2)
{
open(page1,div1);
alert("Hold on for a sec");
open(page2,div2);
}
بتشوف انه اشتغل تمام
وإذا ما تريد أن يكون فيه alert نحط دالة تشتغل بعد مدة (setTimeout) يعني تصير الفنكشن كاملة :
كود:
 
function mulitopen(page1,div1,page2,div2)
{
open(page1,div1);
setTimeout(function(){ open(page2,div2);},100); 
}
حطيت وقت التشغيل بعد 100 جزء من الثانية (هذا أقل وقت شفته يشتغل عليه و جربت على ال50 جزة من الثانية بعض الاحيان يشتغل و أحياناً لأ )
وعلى هذا المثال تقدر تضيف فتح 3 صفحات أو كثر
أتمنى أن تكون المعلومة وصلت
وأي أسئلة ثانية تفضل






سعد السيد احمد غير متواجد حالياً   قديم 12-10-2008, 08:56 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Feb 2008-
#23 (permalink)  

شكرا اخى على المساعدات التى قدمتها
وشكرا مرة اخرة لتقبلك الكثير من الاسئلة اذا ما يضيقك
ومعلومتك الاخيرة وصلت 100 % وجارى التجربة






__________________
Creative Designer
BrainStorm غير متواجد حالياً   قديم 13-10-2008, 02:36 AM
رد مع اقتباس
عضو جديد
تاريخ التسجيل: Aug 2007-
#24 (permalink)  

أود ان اشكر كل المشاركين على هذا التفاعل الرائع والمعلومات القيمة ... وبارك الله فيكم






departure10001 غير متواجد حالياً   قديم 29-10-2008, 01:32 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Aug 2007-
#25 (permalink)  

ما شاء الله

تعاون رائع






__________________
Leonardo-Davinci[At]msn.com
ليوناردو دافينشي غير متواجد حالياً   قديم 31-10-2008, 06:27 PM
رد مع اقتباس
رد


 

أدوات الموضوع

تعليمات المشاركة
لا تستطيع كتابة مواضيع
لا تستطيع كتابة ردود
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة


المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
كيف استدعي ملف داخل صفحه ??? فولاذ تطوير الويب 1 20-03-2006 12:54 AM
كيف اعرض صفحه في صفحه موقعي 4you تطوير الويب 0 30-11-2004 11:20 AM
اخواني كيف افتح صفحه عندك فتح صفحه المنتدى شبح الحب إصلاح وصيانة المنتديات 2 03-07-2004 01:33 PM
كيف تجلب اكثر من صفحه في صفحه واحده ؟ (فكرة بلوكات المجلات) شفاف PHP 1 17-06-2004 04:43 AM
شلون استدعي php من صفحه htm او html al-mstlg.net تطوير الويب 3 09-08-2001 11:45 PM


الساعة الآن: 07:05 AM بتوقيت المملكة العربية السعودية