• דף הבית
    • אינדקס קישורים
    • פוסטים אחרונים
    • משתמשים
    • חיפוש בהגדרות המתקדמות
    • חיפוש גוגל בפורום
    • ניהול המערכת
    • ניהול המערכת - שרת private
    • הרשמה
    • התחברות

    המחלקה בטלפון

    מתוזמן נעוץ נעול הועבר פורום PHP
    7 פוסטים 3 כותבים 523 צפיות 2 עוקבים
    טוען פוסטים נוספים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • תגובה כנושא
    התחברו כדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • B מנותק
      BARKOL
      נערך לאחרונה על ידי BARKOL

      מישהו יודע אם ואיך מיישמים את המחלקה דרך הטלפון?
      של @מאזין-נלהב כאן ושל @מ-מ-פליישער כאן

      A מ 2 תגובות תגובה אחרונה תגובה ציטוט 0
      • A מנותק
        anti malware @BARKOL
        נערך לאחרונה על ידי

        @barkol בשביל מה אתה צריך את זה?
        אם אתה מעונין להעלות קובץ אני יכול לתת לך משהו ש @יוסל-ה הביא לי.

        B תגובה 1 תגובה אחרונה תגובה ציטוט 1
        • B מנותק
          BARKOL @anti malware
          נערך לאחרונה על ידי BARKOL

          @anti-malware אני צריך הורדה ,עריכה ב PHP והעלאה למערכת בחזרה

          A תגובה 1 תגובה אחרונה תגובה ציטוט 0
          • A מנותק
            anti malware @BARKOL
            נערך לאחרונה על ידי

            @barkol תפנה ל @יוסל-ה

            4244046@gmail.com

            מ תגובה 1 תגובה אחרונה תגובה ציטוט 0
            • מ מנותק
              מאיר 2000 @BARKOL
              נערך לאחרונה על ידי

              מישהו יודע אם ואיך מיישמים את המחלקה דרך הטלפון?
              של @מאזין-נלהב כאן ושל @מ-מ-פליישער כאן

              אם עדיין אפשרי להסביר באמת איך מיישמים זאת. תודה!

              תגובה 1 תגובה אחרונה תגובה ציטוט 1
              • מ מנותק
                מאיר 2000 @anti malware
                נערך לאחרונה על ידי

                @anti-malware
                אם אני רוצה להשתמש במחלקה של @מאזין-נלהב אז אני צריך להשתמש בכל זה?:

                <?php
                class BodyPost
                {
                // part "multipart/form-data"
                public static function PartPost($name, $val)
                {
                $body = 'Content-Disposition: form-data; name="' . $name . '"';
                // check instance of oFile
                if($val instanceof oFile)
                {
                $file = $val->Name();
                $mime = $val->Mime();
                $cont = $val->Content();
                
                $body .= '; filename="' . $file . '"' . "\r\n";
                $body .= 'Content-Type: ' . $mime ."\r\n\r\n";
                $body .= $cont."\r\n";
                } else $body .= "\r\n\r\n".$val."\r\n";
                return $body;
                }
                
                public static function Get(array $post, $delimiter = '-------------0123456789')
                {
                if(is_array($post) && !empty($post))
                {
                $bool = true;
                //foreach($post as $val) if($val instanceof oFile) {$bool = true; break; };
                if($bool)
                {
                $ret = '';
                foreach($post as $name=>$val)
                $ret .= '--' . $delimiter. "\r\n". self::PartPost($name, $val);
                $ret .= "--" . $delimiter . "--\r\n";
                } else $ret = http_build_query($post);
                } else throw new \Exception('Error input param!');
                return $ret;
                }
                }
                
                class oFile
                {
                private $name;
                private $mime;
                private $content;
                
                public function __construct($name, $mime=null, $content=null)
                {
                if(is_null($content))
                {
                $info = pathinfo($name);
                // check is exist and readable file
                if(!empty($info['basename']) && is_readable($name))
                {
                $this->name = $info['basename'];
                // get MIME
                $this->mime = mime_content_type($name);
                // load file
                $content = file_get_contents($name);
                if($content!==false)
                {
                $this->content = $content;
                }
                else
                {
                throw new Exception('Don`t get content - "'.$name.'"');
                }
                }
                else
                {
                throw new Exception('Error param');
                }
                }
                else
                {
                $this->name = $name;
                if(is_null($mime)) $mime = mime_content_type($name);
                $this->mime = $mime;
                $this->content = $content;
                };
                }
                
                public function Name() { return $this->name; }
                
                public function Mime() { return $this->mime; }
                
                public function Content() { return $this->content; }
                
                }
                
                class connecting_to_yemot_api
                {
                public $token;
                
                const URL = 'https://www.call2all.co.il/ym/api/';
                
                public function __construct($user_name, $password)
                {
                $body = array('username' => $user_name, 'password' => $password);
                
                $body = http_build_query($body);
                
                $opts = array('http' => array(
                
                'method' => 'POST',
                
                'header' => "Content-Type: application/x-www-form-urlencoded",
                
                'content' => $body,
                
                'follow_location' => false) );
                
                $context = stream_context_create($opts);
                
                $url = self::URL.'Login';
                
                $result = file_get_contents($url, FALSE, $context);
                
                $result = json_decode($result);
                
                if($result -> responseStatus == 'OK')
                {
                $this -> token = $result -> token;
                
                return TRUE;
                }
                else
                {
                throw new Exception('שם המשתמש או הסיסמא של המערכת שגויים');
                }
                }
                
                public function __destruct()
                {
                $this -> connecting('Logout');
                }
                
                public function connecting($action, $body = array())
                {
                $delimiter = '----'.uniqid();
                
                $body['token'] = $this -> token;
                
                $body = BodyPost::Get($body, $delimiter);
                
                $opts = array('http' =>
                array(
                'method' => 'POST',
                'header' => 'Content-Type: multipart/form-data; boundary='.$delimiter,
                'content' => $body,
                'follow_location' => false
                )
                );
                $context = stream_context_create($opts);
                
                $url = self::URL.$action;
                
                $result = file_get_contents($url, FALSE, $context);
                
                $headers = $this -> parseHeaders($http_response_header);
                
                if($headers['Content-Type'][0] == 'application/json')
                {
                return json_decode($result);
                }
                else
                {
                return $result;
                }
                }
                
                private function parseHeaders($headers)
                {
                // פונקציה שמקבלת מערך של שורות הכותרות
                // הפונקציה מפרקת את קבצי הקוקי לתת-מערך נפרד
                
                
                // מערך הכותרות
                $head = array();
                
                foreach( $headers as $k=>$v )
                {
                $t = explode( ':', $v, 2 );
                
                if( isset( $t[1] ) )
                {
                if($t[0] == 'Set-Cookie')
                {
                $CookiesArr = array();
                
                $cookies = explode( ';', $t[1]);
                
                foreach($cookies as $cookie)
                {
                $c = explode( '=', $cookie);
                
                if( isset( $c[1] ) )
                {
                $CookiesArr[ trim($c[0]) ] = trim( $c[1] );
                }
                else
                {
                $CookiesArr[] = trim( $c[0] );
                }
                }
                
                $head[ trim($t[0]) ] = $CookiesArr;
                }
                elseif($t[0] == 'Content-Type')
                {
                $arr = array();
                
                $children = explode( ';', $t[1]);
                
                foreach($children as $child)
                {
                $c = explode( '=', $child);
                
                if( isset( $c[1] ) )
                {
                $arr[ trim($c[0]) ] = trim( $c[1] );
                }
                else
                {
                $arr[] = trim( $c[0] );
                }
                }
                
                $head[ trim($t[0]) ] = $arr;
                }
                else
                {
                $head[ trim($t[0]) ] = trim( $t[1] );
                }
                }
                else
                {
                $head[] = $v;
                if( preg_match( "#HTTP/[0-9\.]+\s+([0-9]+)#",$v, $out ) )
                {
                $head['reponse_code'] = intval($out[1]);
                }
                }
                }
                return $head;
                }
                }
                
                A תגובה 1 תגובה אחרונה תגובה ציטוט 0
                • A מנותק
                  anti malware @מאיר 2000
                  נערך לאחרונה על ידי

                  @מאיר-2000 כאמור אני לא התמשתי אם הדבר הארוך! הזה.
                  בעזרתו של @יוסל-ה הוא הדריך אותי לעשות את זה בכמה שורות.

                  תגובה 1 תגובה אחרונה תגובה ציטוט 0

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

                  נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.

                  בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

                  הרשמה התחברות
                  • פוסט ראשון
                    פוסט אחרון