2011-09-30 7 views
8

、しかし、チュートリアルの著者が質問に答えていない期待していmysqli_error()は、問題のコード行である所定の正確に1パラメータ、0を期待 -警告私は、次のエラー警告が表示されますが、ここで私のクエリは</p> <p>あるmysqli_errorは()私は、チュートリアルを、以下の午前正確に1パラメータ、0特定のエラー

$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error()); 

全体コードが

session_start(); 

require_once "scripts/connect_to_mysql2.php"; 

//Build Main Navigation menu and gather page data here 

$sqlCommand = "SELECT id, linklabel FROM pages ORDER BY pageorder ASC"; 

$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error()); 

$menuDisplay = ''; 
while ($row = mysqli_fetch_array($query)) { 
    $pid = $row["id"]; 
    $linklabel = $row["linklabel"]; 

    $menuDisplay .= '<a href="index.php?pid=' . $pid . '">' . $linklabel . '</a><br />'; 

} 
mysqli_free_result($query); 

含まれるファイルは、以下を有していますラインをINGの

$myConnection = mysqli_connect("$db_host","$db_username","$db_pass","$db_name") or die ("could not connect to mysql"); with reference to $myConnection, why do I get this error? 

おかげ

+0

ドキュメントを読みましたが、動作しませんでした。 –

+0

「$ var」という質問に関係のないものは冗長です。これは単に文字列を開き、$ varを参照してその値を文字列に入れてから文字列から削除します。言い換えれば、あなたは$ varを使うことができます。 mysqli_connect($ db_host、$ db_username ....)のように。 – Corbin

+1

@Corbin、それは必ずしも冗長ではありません。組み込み関数の中には、受け入れる型が厳密なものもあります。 '' $ var ''は、文字列以外の変数を関数に渡す文字列型に変換します。 '$ var = 0;'なら、 '' $ var ''は' '0''です。 – eyelidlessness

答えて

21

mysqli_error()は、パラメータとしてデータベースへの接続を渡すためにあなたを必要とします。ここでのドキュメントは、いくつかの有用な例があります。

http://php.net/manual/en/mysqli.error.php

はそうのような問題の行を変更してみて、あなたは良い形にする必要があります:

$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error($myConnection)); 
+0

1:D – Talisin

+0

こんにちは、返信用のおかげで、 それが今私にこの問題を与えている - 「mysqli_error()は、パラメータ1はmysqliのことを期待」 –

+0

私はあなたが、それはまだ私を与えた言ったことなかったがエラーが発生したので、すべてのmysqliをmysqlに変更しました。 –

4

mysqli_error機能は、あなたが得る理由です、パラメータとして$myConnectionが必要です警告

1

まず、問題は、mysqli_errorのパラメータを指定しなかったためです。私はそれがここのポストに基づいて解決されていることがわかります。おそらく、次の問題はインクルードされたファイルのファイルパスが間違っているためです。

は、このコード

$myConnection = mysqli_connect("$db_host","$db_username","$db_pass","$db_name") or die ("could not connect to mysql"); 

は、「スクリプト」フォルダにあり、メインコードファイルは、スクリプトフォルダと同じレベルにあるあなたは確かにいますか?

関連する問題