Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

php का उपयोग करके json में सरणियों की एक सरणी के रूप में एक mysql का चयन कैसे करें

json_encode के लिए सरणी के JSON सरणी को वापस करने के लिए आपको संख्यात्मक रूप से अनुक्रमित सरणी की आवश्यकता होती है।

यह निम्नलिखित, सामान्य कार्य के साथ प्राप्त किया जा सकता है:

    function SqlSelectToJsonTable($result,$withNames=false){
        // result a mysqli::query object, 
        // withNames: boolean, should the column names be returned as first row
        $return_arr = array();
        echo $result->num_rows;
        if ($result->num_rows > 0){
            if($withNames == true){
                $return_arr[0] = array();
                $fields = $result->fetch_fields();
                foreach ($fields as $field){
                    echo "column: ".$field->name." ";
                    array_push($return_arr[0],$field->name);
                }
            }
            while($row = $result->fetch_assoc()) {
                $return_arr[]= array_values($row);
            }
        } else {
            echo "0 results";
        }
        return json_encode($return_arr);
    }

निम्नलिखित के रूप में उपयोग किया जाता है:

    <?php
    $servername = "localhost";
    $username = "user";
    $password = "password";
    $dbname = "test";

    // Create connection
    $conn = new mysqli($servername, $username, $password, $dbname);
    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 

    $sql = "SELECT id, title FROM Posts";
    $result = $conn->query($sql);

    $jsonTable = SqlSelectToJsonTable($result);
    echo '<br/>'.$jsonTable;

    echo "<script type=\"text/javascript\">
        var jsTable = JSON.parse('".$jsonTable."');
        </script>";

    $conn->close();
    ?>

जहां jsTable प्रभावी रूप से सरणियों की एक सरणी होगी। विकल्प पर ध्यान दें withNames यदि आप इस सरणी को जावास्क्रिप्ट में पास करने का प्रयास करते हैं, तो पहली पंक्ति के रूप में कॉलम नामों को जोड़ने की अनुमति देना उपयोगी है। विज़ुअलाइज़ेशन .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apache Lucene के साथ एक MySQL डेटाबेस को इंडेक्स करें, और उन्हें सिंक्रोनाइज़ करें

  2. लॉगिन के लिए प्राप्त करें या पोस्ट करें?

  3. MySQL 8 के लिए हाइबरनेट बोली?

  4. ER_NOT_SUPPORTED_AUTH_MODE:क्लाइंट सर्वर द्वारा अनुरोधित प्रमाणीकरण प्रोटोकॉल का समर्थन नहीं करता है; MySQL क्लाइंट को अपग्रेड करने पर विचार करें

  5. 2017 @ कईनाइन्स:सेलिब्रेटिंग अवर कस्टमर स्टोरीज