簡體   English   中英

從外部PHP文件調用PHP函數

[英]Calling PHP function from external PHP file

我最近開始學習php中的函數式編程,我不知道為什么這行不通。 我有一個單獨的文件,稱為“ functions.php”,我正試圖從索引文件中調用一個函數。

functions.php:

function connectSql() {

  $servername = "";
  $username = "";
  $password = "";
  $dbname = "";

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

function displayPublic() {

  connectSql();
  $sql = "SELECT * FROM projects WHERE public == true ORDER BY dateStarted DESC";
  $result = $conn->query($sql);

  if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()){
      echo "Project found";
    }
  } else {
    echo "Ei tuloksia";
  }
  $conn->close();
}

index.php:

include 'functions.php';
displayPublic();

您沒有返回$conn

嘗試

 function connectSql() {

    $servername = "";
    $username = "";
    $password = "";
    $dbname = "";

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

function displayPublic() {

    $conn = connectSql();
    $sql = "SELECT * FROM projects WHERE public == true ORDER BY dateStarted DESC";
    $result = $conn->query($sql);

    if ($result->num_rows > 0) {
        // output data of each row
        while($row = $result->fetch_assoc()){
                                            echo "Project found";
                                            }
    } else {
        echo "Ei tuloksia";
    }
    $conn->close();

}

或者使$conn為全局變量

<?php

    $conn;

   function connectSql() {

        $servername = "";
        $username = "";
        $password = "";
        $dbname = "";

        global $conn;

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

    function displayPublic() {
        connectSql();
        global $conn;        
        $sql = "SELECT * FROM projects WHERE public == true ORDER BY dateStarted DESC";
        $result = $conn->query($sql);

        if ($result->num_rows > 0) {
            // output data of each row
            while($row = $result->fetch_assoc()){
                                                echo "Project found";
                                                }
        } else {
            echo "Ei tuloksia";
        }
        $conn->close();

    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM