הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   שליחת טופס ב AJAX (https://hosts.co.il/forums/showthread.php?t=26374)

sUP 14-07-06 16:27

שליחת טופס ב AJAX
 
ראיתי הרבה אתרים שמשתמשים ב AJAX לשליחת טפסים..
כמו subscribe לחדשות במייל וכו'..

רציתי לדעת איך עושים שליחת טופס ב AJAX

תודה |קורץ|

eLad 14-07-06 16:36

צור XMLHttpRequest, נניח:

PHP קוד:

var oXmlHttp = new XMLHttpRequest(); 

ושלח את הנתונים ב get (או ב post)

PHP קוד:

oXmlHttp.open('POST'sURLtrue); 

והמימוש של POST -
PHP קוד:

oXmlHttp.send("?var1=siteam&var2=elad); 


בניה 14-07-06 16:39

ציטוט:

נכתב במקור על ידי eLad
צור XMLHttpRequest, נניח:

PHP קוד:

var oXmlHttp = new XMLHttpRequest(); 

ושלח את הנתונים ב get (או ב post)

PHP קוד:

oXmlHttp.open('POST'sURLtrue); 

והמימוש של POST -
PHP קוד:

oXmlHttp.send("?var1=siteam&var2=elad); 


ב"ה

גם אם זה בPOST זה יקלוט נתונים מה QueryString?

eLad 14-07-06 16:46

ציטוט:

נכתב במקור על ידי בניה
ב"ה

גם אם זה בPOST זה יקלוט נתונים מה QueryString?

אם שולחים את הנתונים ב POST (כמו בדוגמא שצירפתי - שם שכחתי לסגור גרש), אז קולטים אותם כמו POST רגיל:

PHP קוד:

Request.Form("field1")(); 

או ב PHP -

PHP קוד:

$_POST['field1']; 

ואם שולחים ב GET, אז קולטים אותם כמו GET רגיל:

PHP קוד:

Request.Querystring("field2")(); 

או ב PHP -

PHP קוד:

$_GET['field2']; 


eXtaZa 14-07-06 16:48

ולמה כדי לשלוח טופס בAjax דווקא?

sUP 14-07-06 16:52

יותר נוח, לא צריך לרפרש את הדף..

תודה רבה אלעד,
אבל לא הבנתי את הרעיון ב send
לפי מה שאני מבין כתבת תצורה של get

sUP 14-07-06 18:22

הבנתי, לא חשוב.
תודה

אפשר לנעול.=]

eLad 14-07-06 18:31

ציטוט:

נכתב במקור על ידי sUP
יותר נוח, לא צריך לרפרש את הדף..

תודה רבה אלעד,
אבל לא הבנתי את הרעיון ב send
לפי מה שאני מבין כתבת תצורה של get

לא, ככה שולחים פרמטרים גם ב POST |קורץ|

עריכה

לא שמתי לב שהסתדרת ..

ובכל מקרה אני לא דוגל בנעילת אשכולות כאלו, אם יש לך עוד שאלות בנושא אתה מוזמן..!

sUP 14-07-06 18:51

מממ הנה..

זה שולח את הדף,
אבל זה לא מציג את הנתונים שהזנתי

PHP קוד:

function SendFields(myform,myuser,mymail,mypass,mypassconf) { 
formname myform;

        var 
url "ajax.php?act=send";

        
xmlHttp GetXmlHttpObject(stateChanged);
        
xmlHttp.open("POST"url true);
        
xmlHttp.send("?username="+myuser+"&email="+mymail+"&password="+mypass+"&confirm="+mypassconf);

        
document.getElementById(formname).innerHTML="אנא המתן..";

}



function 
stateChanged() { 
    if (
xmlHttp.readyState==|| xmlHttp.readyState=="complete") { 
        
document.getElementById(formname).innerHTML=xmlHttp.responseText;
    } 


הקוד של ה getxmlhttpobject זה http://blogs.wallak.net/getobj.js

sUP 14-07-06 23:40

תעשו משהו עם העריכה בחיאת, זה מעצבן שאי אפשר לערוך.

בכל מקרה, כמו שהבנתי זה פשוט לא שולח את המשתנים בתור POST
וזה אין לי מושג למה.

ועכשיו יש לי עוד שאלה,
נכון עושים innerHTML בשביל לכתוב בתוך מקום טקסט מסויים (במקום טקסט קיים)..
אז השאלה היא מה הפקודה לעשות back מה שנקרא ולהחזיר את הטקסט שהיה לפני הinner

תודה=]

(ובנוסף לשאלה מקודם)


כל הזמנים הם GMT +2. הזמן כעת הוא 03:09.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ