הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 04-05-08, 16:06   # 1
דור
אחראי קהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 32
הודעות: 3,724

דור לא מחובר  

שגיאות SQL

שלום

אני יודע שאני פותח די הרבה אשכולות בתיכנות, זה רק כי אני די חדש ויש לי שגיאות שאני לומד מהן
אשמח אם תתקנו לי את המשפט SQL הבאים:

1.
קוד:
<%
	session ("e")=Request.Form("email")
	session ("p")=Request.Form("Password")
	session ("n")=Request.Form("number")
	session ("k")=Request.Form("kidomet")
	path=Server.mappath("db.mdb")
	
	set con= Server.createobject("ADODB.Connection")
       
 	con.mode=3   
   	con.open "Provider=Microsoft.Jet.OLEDB.4.0;data source=" &path

	sq2="select * from o4users where email="&session ("e")&" and Password="&session ("p")&" and number="&session ("n")&" and kidomet="&session ("k")&""

	set R=con.execute(sq2)
	if R.eof then
		response.write "פרטים לא נכונים"
	else
	    sq="delete * from o4users where email="&session ("e")&" and Password="&session ("p")&" and number="&session ("n")&" and kidomet="&session ("k")&""
	con.execute sq
%>
מחקת בהצלחה את המשתמש
<%
end if
%>
השגיאה:
ציטוט:
Microsoft JET Database Engine (0x80040E14)
‏‏‎‏‏שגיאת תחביר (אופרטור חסר) בביטוי השאילתה 'email=dor_1812@hotmail.com and Password=123456 and number=5312324 and kidomet=052'.
/idan/del2.asp, line 15
2.
קוד:
<%

	i=Request.Form("id")
	fname=Request.Form("firstname")
	sname=Request.Form("familyname")
	n=Request.Form("number")
	e=Request.Form("email")
	z=Request.Form("ezor")
	a=Request.Form("adress")
	yn=Request.Form("yesno")
        o=Request.Form("offers")
	c=Request.Form("comment")
	k=Request.Form("kidomet")
	town=Request.Form("city")
	sq="UPDATE `o4users` SET `firstname`='"&fname&"',`familyname`='"&sname&"',`number`='"&n&"',`email`='"&e&"',`ezor`='"&z&"',`adress`='"&a&"',`yesno`='"&yn&"',`comment`='"&c&"',`offers`='"&o&"',`kidomet`='"&k&"'  WHERE `id`="&i&""
	response.write sq
	path=Server.mappath("db.mdb")
	
	set con= Server.createobject("ADODB.Connection")
       
 	con.mode=3   
   	con.open "Provider=Microsoft.Jet.OLEDB.4.0;data source=" &path
     
	
	con.Execute sq

%>

הנתונים עודכנו בהצלחה

השגיאה:
ציטוט:
סוג שגיאה:
Microsoft JET Database Engine (0x80040E14)
‏‏‎‏‏שגיאת תחביר (אופרטור חסר) בביטוי השאילתה '`id`='.
/idan/update.asp, line 25

תודה רבה רבה!

Last edited by דור; 04-05-08 at 16:08..
  Reply With Quote
ישן 04-05-08, 16:35   # 2
DavidBD
חבר על
 
מיני פרופיל
תאריך הצטרפות: Dec 2005
גיל: 30
הודעות: 956

DavidBD לא מחובר  

1.
קוד:
<&#37;
	session ("e")=Request.Form("email")
	session ("p")=Request.Form("Password")
	session ("n")=Request.Form("number")
	session ("k")=Request.Form("kidomet")
	path=Server.mappath("db.mdb")
	
	set con= Server.createobject("ADODB.Connection")
       
 	con.mode=3   
   	con.open "Provider=Microsoft.Jet.OLEDB.4.0;data source=" &path

	sq2="select * from o4users where [email]="&session ("e")&" and [Password]="&session ("p")&" and [number]="&session ("n")&" and [kidomet]="&session ("k")&""

	set R=con.execute(sq2)
	if R.eof then
		response.write "פרטים לא נכונים"
	else
	    sq="delete * from o4users where [email]="&session ("e")&" and [Password]="&session ("p")&" and [number]="&session ("n")&" and [kidomet]="&session ("k")&""
	con.execute sq
%>
מחקת בהצלחה את המשתמש
<%
end if
%>
תעטוף תמיד שמות של שדות ב [ ] (בPHP ב `) ע"מ להמנע ממילים שמורות של SQL.

2.
קוד:
<%

	i=Request.Form("id")
	fname=Request.Form("firstname")
	sname=Request.Form("familyname")
	n=Request.Form("number")
	e=Request.Form("email")
	z=Request.Form("ezor")
	a=Request.Form("adress")
	yn=Request.Form("yesno")
        o=Request.Form("offers")
	c=Request.Form("comment")
	k=Request.Form("kidomet")
	town=Request.Form("city")
	sq="UPDATE o4users SET [firstname]='"&fname&"', [familyname]='"&sname&"',[number]='"&n&"',[email]='"&e&"',[ezor]='"&z&"',[adress]='"&a&"',[yesno]='"&yn&"',[comment]='"&c&"',[offers]='"&o&"',[kidomet]='"&k&"'  WHERE [id]=" & i
	response.write sq
	path=Server.mappath("db.mdb")
	
	set con= Server.createobject("ADODB.Connection")
       
 	con.mode=3   
   	con.open "Provider=Microsoft.Jet.OLEDB.4.0;data source=" &path
     
	
	con.Execute sq

%>
עטפת את התאים בהגנה מפני "מילים שמורות של SQL", אבל בדרך שעושים זאת בPHP (`) ולא כמו בASP ([]), בנוסף, בASP בניגוד לPHP לא נותנים לשדות מסוג מספר ' ' או " ".

שים לב לטעויות מהסוג הזה.

בהצלחה בהמשך
__________________
דוד בן דוד.
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


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

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