1

私はコードから始めます:

$permission = $_SESSION['permission'];
// Connect to database
$con = new mysqli("localhost", "privateinfo", "privateinfo", "privateinfo");

// Check connection
if (mysqli_connect_errno()) {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

// Prepare to select all liabilities
$stmt = $con->prepare("SELECT `Linking`, `Edit_Liab`, `Own_Stud`, `All_Stud`, `View_Report`, `Read_Write` FROM Permissions WHERE `ID`=?");
$stmt->bind_param("s", $permission);  // Bind variables to the result of the query
$stmt->execute(); // Execute the query
$stmt->bind_result($linking, $editliab, $ownstud, $allstud, $viewrep, $readwrite); // Bind variables to the result of the query
$stmt->store_result();
$stmt->close();

基本的に、私の問題はphpが変数を取得していないことです。入ってくるすべての変数は 1 であるはずですが、実際にはすべてゼロです。接続は問題なく、文字通りすべてにダイステートメントを入れてエラーを出そうとしましたが、何も起こりませんでした。アクセス許可変数も適切に設定されています。SQLコードとして直接入力すると、正しい応答も得られます。ここで何が問題なのかよくわかりません。誰でも何か考えがありますか?

4

1 に答える 1

0

結果を格納する代わりに行をフェッチする必要があります。

だから変更:

$stmt->store_result();

に:

$stmt->fetch();
于 2013-05-16T17:52:24.167 に答える