View Single Post
ישן 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