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

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. PHP - קריאה מDB של MSSQL. מישהו התנסה?

PHP - קריאה מDB של MSSQL. מישהו התנסה?

מתוזמן נעוץ נעול הועבר תכנות
14 פוסטים 4 כותבים 1.3k צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • מנצפךמ מנותק
    מנצפךמ מנותק
    מנצפך
    כתב ב נערך לאחרונה על ידי
    #2

    אתה לא משתמש באיזה ERP?

    clickoneC תגובה 1 תגובה אחרונה
    0
    • clickoneC מנותק
      clickoneC מנותק
      clickone
      השיב למנצפך ב נערך לאחרונה על ידי
      #3

      @מנצפך לא. זו מערכת שאני מפתח.

      אין טסט כמו פרודקשן.

      המייל שלי urivpn@gmail.com

      מנצפךמ תגובה 1 תגובה אחרונה
      0
      • מנצפךמ מנותק
        מנצפךמ מנותק
        מנצפך
        השיב לclickone ב נערך לאחרונה על ידי
        #4

        @clickone סליחה. התכוונתי ORM.

        clickoneC תגובה 1 תגובה אחרונה
        1
        • clickoneC מנותק
          clickoneC מנותק
          clickone
          השיב למנצפך ב נערך לאחרונה על ידי
          #5

          @מנצפך חשדתי שהתכוונת לORM.
          עדיין לא.....
          אתה מכיר משהו לPHP מול MSSQL עם ORM?

          אין טסט כמו פרודקשן.

          המייל שלי urivpn@gmail.com

          תגובה 1 תגובה אחרונה
          0
          • מנצפךמ מנותק
            מנצפךמ מנותק
            מנצפך
            כתב ב נערך לאחרונה על ידי
            #6

            בעוונות אני לא מתעסק (עדיין) לא עם PHP וכמעט לא עם MSSQL.
            בינתיים node.js עם WaterLine. (ב Sails.js)
            שאל את המומחים.

            clickoneC תגובה 1 תגובה אחרונה
            1
            • clickoneC מנותק
              clickoneC מנותק
              clickone
              השיב למנצפך ב נערך לאחרונה על ידי
              #7

              @מנצפך בינתיים אתה עושה את מה שנכון לעשות 🙂
              אני בעוונות צריך להתעסק עם PHP.

              אין טסט כמו פרודקשן.

              המייל שלי urivpn@gmail.com

              מנצפךמ תגובה 1 תגובה אחרונה
              1
              • מנצפךמ מנותק
                מנצפךמ מנותק
                מנצפך
                השיב לclickone ב נערך לאחרונה על ידי
                #8

                @clickone זה כי אני רק מתחיל בתחום ה - WEB

                תגובה 1 תגובה אחרונה
                1
                • dovidD מנותק
                  dovidD מנותק
                  dovid ניהול
                  כתב ב נערך לאחרונה על ידי dovid
                  #9

                  https://github.com/Microsoft/msphpsql
                  תתקין בלינוקס לפי ההוראות הנ"ל (הרבה צעדים שם כנראה מיותרים כי כנראה כבר מותקן PHP וכן אפאצ'), יש לך שמה צעד אחר צעד. בסוף יש גם קובץ דמו לטסט.

                  מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                  בכל נושא אפשר ליצור קשר dovid@tchumim.com

                  תגובה 1 תגובה אחרונה
                  1
                  • clickoneC מנותק
                    clickoneC מנותק
                    clickone
                    כתב ב נערך לאחרונה על ידי
                    #10

                    @dovid זה לPHP7.
                    יש לי PHP5 על השרת. ואני דיי חושש לשדרג / להוסיף.

                    אין טסט כמו פרודקשן.

                    המייל שלי urivpn@gmail.com

                    dovidD תגובה 1 תגובה אחרונה
                    0
                    • dovidD מנותק
                      dovidD מנותק
                      dovid ניהול
                      השיב לclickone ב נערך לאחרונה על ידי dovid
                      #11

                      @clickone אמר בPHP - קריאה מDB של MSSQL. מישהו התנסה?:

                      @dovid זה לPHP7.
                      יש לי PHP5 על השרת. ואני דיי חושש לשדרג / להוסיף.

                      אז תבדוק את זה
                      http://www.linuxjournal.com/article/6636
                      https://gist.github.com/joecampo/acd1e5881aee08bd8959

                      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                      בכל נושא אפשר ליצור קשר dovid@tchumim.com

                      תגובה 1 תגובה אחרונה
                      1
                      • ח מנותק
                        ח מנותק
                        חוקר
                        כתב ב נערך לאחרונה על ידי חוקר
                        #12

                        @clickone
                        בניתי מערכת טלפונית עבור מנהלת קבר יוסף, הוצרכתי לחבור לבסיס הנתונים שלהם MSSQL.
                        לאחר יגיעה וטירחה הסתדרתי ב"ה.
                        ראשית כל חייבים שהיה מותקן על השרת דרייברים של (MSSQL (sql_srv
                        כולל דרייבר PDO לSQL.
                        אני אישית משתמש הרבה עם מחלקת תקשורת לMYSQL שמקורה https://gist.github.com/danferth/9512172
                        אך ביצעתי שינויים במבנה ההתחברות לספק גמישות בהתחברות דינאמית לבסיס נתונים משתנה ולא קבוע במחלקה.
                        בנוסף הוספתי תמיכה בmssql.
                        להלן המחלקה

                        class db{
                        
                          private $dbh;
                          private $error;
                          private $qError;
                          
                          private $stmt;
                          
                          public function __construct($user, $pass, $dbName = null, $host = "localhost", $srv = "mysql"){
                        		$this->host = $host;
                        		$this->user = $user;
                        		$this->pass = $pass;
                        	if ($dbName == null)
                        		$this->dbName = $user;
                        	else
                        	$this->dbName = $dbName;
                        		//dsn for mysql
                                //if ($srv == "mysql")
                               if ($srv == "mysql"){
                            $dsn = "mysql:host=".$this->host.";dbname=".$this->dbName;
                            $options = array(
                                PDO::ATTR_PERSISTENT    => true,
                                PDO::ATTR_ERRMODE       => PDO::ERRMODE_EXCEPTION
                                );
                        		}
                                elseif ($srv == "mssql"){
                            $dsn = "sqlsrv:server=".$this->host.";Database=".$this->dbName;
                            $options = array(
                                PDO::ATTR_ERRMODE       => PDO::ERRMODE_EXCEPTION
                                );
                        		}
                            try{
                                $this->dbh = new PDO($dsn, $this->user, $this->pass, $options);
                            }
                            //catch any errors
                            catch (PDOException $e){
                                $this->error = $e->getMessage();
                            }
                            
                          }
                          
                          public function query($query){
                              $this->stmt = $this->dbh->prepare($query);
                          }
                          
                          public function bind($param, $value, $type = null){
                              if(is_null($type)){
                                  switch (true){
                                      case is_int($value):
                                        $type = PDO::PARAM_INT;
                                        break;
                                      case is_bool($value):
                                          $type = PDO::PARAM_BOOL;
                                          break;
                                      case is_null($value):
                                          $type = PDO::PARAM_NULL;
                                          break;
                                      default:
                                          $type = PDO::PARAM_STR;
                                  }
                              }
                            $this->stmt->bindValue($param, $value, $type);
                          }
                          
                          public function execute(){
                              return $this->stmt->execute();
                              $this->qError = $this->dbh->errorInfo();
                                if(!is_null($this->qError[2])){
                        	        echo $this->qError[2];
                                }
                                echo 'done with query';
                          }
                          
                          public function resultset(){
                              $this->execute();
                              return $this->stmt->fetchAll(PDO::FETCH_ASSOC);
                          }
                          
                          public function single(){
                              $this->execute();
                              return $this->stmt->fetch(PDO::FETCH_ASSOC);
                          }
                          
                          public function rowCount(){
                              return $this->stmt->rowCount();
                          }
                          
                          public function lastInsertId(){
                              return $this->dbh->lastInsertId();
                          }
                          
                          public function beginTransaction(){
                              return $this->dbh->beginTransaction();
                          }
                          
                          public function endTransaction(){
                              return $this->dbh->commit();
                          }
                          
                          public function cancelTransaction(){
                              return $this->dbh->rollBack();
                          }
                          
                          public function debugDumpParams(){
                              return $this->stmt->debugDumpParams();
                          }
                          
                          public function queryError(){
                              $this->qError = $this->dbh->errorInfo();
                              if(!is_null($qError[2])){
                                  echo $qError[2];
                              }
                          }
                          
                        }//end class db
                        

                        להלן דוגמה לשימוש

                        $database = new db("user", "pass", "moreshet.mdf", "mssql.lut.co.il", "mssql");
                        

                        זה יוצר אינטרפייס של המחלקה ומאפשר שליפת הנתונים ועוד לפי ההוראות בקישור לעיל.
                        לדוגמה

                        $database->query('SELECT * 
                          FROM [moreshet.mdf].[phone].[play]'); 
                        //$database->bind(":$key", $value);
                        $result = $database->resultset();
                        

                        ובקיצור זה ממש כמו mysql.
                        יש לי פונקציות נוספות שמקילות מאוד על כל התקשורת עם SQL.
                        תוכל ליצור קשר באישי.
                        7226644@gmail.com

                        clickoneC תגובה 1 תגובה אחרונה
                        3
                        • clickoneC מנותק
                          clickoneC מנותק
                          clickone
                          השיב לחוקר ב נערך לאחרונה על ידי
                          #13

                          @חוקר
                          תודה רבה 🙂
                          אני חושב שהתקני את המחלקות האלו ואפילו הצלחתי לתקשר עם השרת.
                          אבל לא תגובות משאילתות.
                          עוד מעט אבדוק שוב....

                          יש תמיכה לקודים. התחלה לפני הקוד ב3 סימני תלתל רצופים וסיום
                          תלתל = ~

                          אין טסט כמו פרודקשן.

                          המייל שלי urivpn@gmail.com

                          ח תגובה 1 תגובה אחרונה
                          0
                          • ח מנותק
                            ח מנותק
                            חוקר
                            השיב לclickone ב נערך לאחרונה על ידי חוקר
                            #14

                            @clickone אמר בPHP - קריאה מDB של MSSQL. מישהו התנסה?:

                            @חוקר
                            תודה רבה 🙂
                            אני חושב שהתקני את המחלקות האלו ואפילו הצלחתי לתקשר עם השרת.
                            אבל לא תגובות משאילתות.
                            עוד מעט אבדוק שוב....

                            יש תמיכה לקודים. התחלה לפני הקוד ב3 סימני תלתל רצופים וסיום
                            תלתל = ~

                            אכן תיקנתי את ההצגה של הקודים.
                            לגבי קבלת הנתונים תוכל ליצור קשר באישי.

                            אגב לפני שהסתדרתי כבר חשבתי לעשות הכל באמצעות ג'יסון, אבל אין סיבה.
                            זה עובד חלק

                            תגובה 1 תגובה אחרונה
                            1

                            בא תתחבר לדף היומי!
                            • התחברות

                            • אין לך חשבון עדיין? הרשמה

                            • התחברו או הירשמו כדי לחפש.
                            • פוסט ראשון
                              פוסט אחרון
                            0
                            • דף הבית
                            • קטגוריות
                            • פוסטים אחרונים
                            • משתמשים
                            • חיפוש
                            • חוקי הפורום