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

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

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 01-10-13, 22:42   # 1
MAORBARI
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Sep 2008
הודעות: 484

MAORBARI לא מחובר  

בעיה PREG_MATCH_ALL

זה הקוד שלי:

PHP קוד:
$sql "user_name = 'a2561-%^8*$#@aa' OR usermame='abc' AND userid > 5 AND userid<=8";
preg_match_all('/([\w\-]*)[\s]?[<>=]+[\s]?[\'"]?([\w]*)[\'"]?/i'$sql$matchesPREG_SET_ORDER);
print_r($matches); 
בעצם אני רוצה שהוא יחזיר לי ערך של KEY ואת ה VALUE שלו..
ז"א בסופו של דבר מערך ל SQL שהבאתי:
PHP קוד:
Array(
[
0] => Array        (
            [
0] => user_name 'a2561-%^8*$#@aa'
            
[1] => user_name
            
[2] => a2561-%^8*$#@aa
)
[
1] => Array        (
            [
0] => usermame='abc'
            
[1] => usermame
            
[2] => abc

[
2] => Array        (
            [
0] => userid 5
            
[1] => userid
            
[2] => 5

[
3] => Array        (
            [
0] => userid<=8
            
[1] => userid
            
[2] => 8
)

הבעיה היא שכשיש סימנים כמו %@ זה פשוט מבלגן לי את כל הכל ולא מקבל את המידע נכון..
אבל כשזה מילה רגילה זה עובד מצויין שולף מצויין..
מה לעשות?
  Reply With Quote
ישן 02-10-13, 21:39   # 2
איציק ברבי
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Feb 2011
הודעות: 970

איציק ברבי לא מחובר  

תוסיף ביטוי, שאם קיים % @ אז יזהה אותם ואם לא שלא יעשה כלום תלמד על הברחות .
__________________

איציק ברבי - שירות לקוחות
כתובת אתר: http://build-net.co.il/
איימל: Support@build-net.co.il
טלפון: 052-3937296.
  Reply With Quote
ישן 03-10-13, 00:14   # 3
MAORBARI
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Sep 2008
הודעות: 484

MAORBARI לא מחובר  

ציטוט:
נכתב במקור על ידי איציק ברבי צפה בהודעה
תוסיף ביטוי, שאם קיים % @ אז יזהה אותם ואם לא שלא יעשה כלום תלמד על הברחות .
אני יודע הברחות וגם סידרתי את הבעיה ששיניתי את \w ל ^' ווכה כל מה שמחוץ לגרש..
עכשיו נוצרו לי שתי בעיות
הוא מחזיר לי ARRAY כזה:
PHP קוד:
Array
(
    [
0] => Array
        (
            [
0] => user_name 'a2561-%^8*$#@aa'
            
[1] => user_name
            
[2] => a2561-%^8*$#@aa
        
)

    [
1] => Array
        (
            [
0] => usermame='abc'
            
[1] => usermame
            
[2] => abc
        
)

    [
2] => Array
        (
            [
0] => userid AND userid<=8)
            [
1] => userid
            
[2] => AND userid<=8)
        )


ואם אני שם ' ב VALUE הוא חותך את ה VALUE עד הגרש.. ואני רוצה שאם הגרש היא מוברחת ב VALUE שישאיר אותה..
איך אני פותר את הבעיות?
זה הקוד החדש:
PHP קוד:
$sql "user_name = 'a2561-%^8*$#@aa' OR (usermame='abc' AND userid > 5 AND userid<=8)";
preg_match_all('/`?([\w]+)`?[\s]*[<>=]+[\s]*[\'"]?([^\'"]*)[\'"]?/i'$sql$matchesPREG_SET_ORDER);
print_r($matches); 
תודה!

Last edited by MAORBARI; 03-10-13 at 00:28..
  Reply With Quote
ישן 03-10-13, 15:01   # 4
DanielM
חבר חדש
 
מיני פרופיל
תאריך הצטרפות: Jul 2013
הודעות: 15

DanielM לא מחובר  

עדיין אקטואלי?
  Reply With Quote
ישן 03-10-13, 15:16   # 5
MAORBARI
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Sep 2008
הודעות: 484

MAORBARI לא מחובר  

ציטוט:
נכתב במקור על ידי DanielM צפה בהודעה
עדיין אקטואלי?
כן אחי..
  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. הזמן כעת הוא 10:00.

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