2016-04-09 13 views
7

私はPHPファイルを作成しました。それは私のサーバー上にあります。私はクロムからphpファイルを開いた後、 "データベースを見つけることができません"と表示しています。データベースを見つけることができません

<?php 

    $dbhost = "fdb7.biz.nf"; 
    $database = "2065616_knurum"; 
    $username = "2065616_knurum"; 
    $dbpass = "XXXXXXXXX"; 

    mysqli_connect($dbhost, $username, $dbpass, $database); 

    @mysql_select_db($database) or die("Unable to find database"); 

    $name = isset($_GET["name"]) ? $_GET["name"] : ''; 

    $message = isset($_GET["message"]) ? $_GET["message"] : ''; 


    $query = "INSERT INTO test VALUES ('', '$name', '$message')"; 

    mysql_query($query) or die (mysql_error("error")); 

    mysql_close(); 

    echo"hello"; 
    ?> 

いくつかのヘルパーのコメントの後、ここが正しい解決策であり、それは働いています。回答したすべてのヘルパーに感謝します。

$dbhost = "fdb7.biz.nf"; 
$database = "2065616_knurum"; 
$username = "2065616_knurum"; 
$dbpass = "XXXXXXXX"; 

$link = mysqli_connect($dbhost, $username, $dbpass, $database); 

if (!$link) { 
    echo "Error: Unable to connect to MySQL." . PHP_EOL; 
    echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL; 
    echo "Debugging error: " . mysqli_connect_error() . PHP_EOL; 
    exit; 
} 


$name = isset($_GET["name"]) ? $_GET["name"] : ''; 

$message = isset($_GET["message"]) ? $_GET["message"] : ''; 

$query = "INSERT INTO test VALUES ('', '$name', '$message')"; 

mysqli_query($link, $query) or die (mysqli_error("error")); 


echo "Success: A proper connection to MySQL was made! The my_db database is great." . PHP_EOL; 
echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL; 
mysqli_close($link); 
?> 
+5

あなたはポケットをチェックしましたか?ソファの後ろに?カーシートの下で???私はそれを見つけることができないので、コードが隠れている場所かもしれません。あなたが問題を解決しようとしたという証拠だけでなく、すべての行方不明!!! – gavgrif

+0

@gavgrifあなたがコミットしてくれてありがとう。コードは隠されていません。 –

+0

こんにちは、ヘルプがあれば、私の答えに緑のチェックをチェックしてもらえますか? –

答えて

2
1) check your database spelling. 
2) have you given all the required privileges to user? 
3) username and password is correct ? 
6

あなたはライブラリmysqlmysqliの使用を混合しているhttp://php.net/manual/en/function.mysqli-connect.php

<?php 

$dbhost = "fdb7.biz.nf"; 
$database = "2065616_knurum"; 
$username = "2065616_knurum"; 
$dbpass = "XXXXXXXXX"; 

$link = mysqli_connect($dbhost, $username, $dbpass, $database); 

if (!$link) { 
    echo "Error: Unable to connect to MySQL." . PHP_EOL; 
    echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL; 
    echo "Debugging error: " . mysqli_connect_error() . PHP_EOL; 
    exit; 
} 

echo "Success: A proper connection to MySQL was made! The my_db database is great." . PHP_EOL; 
echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL; 

mysqli_close($link); 
+0

ありがとう。それは大きな助けです。 –

2

から、この参照してみてください。

すなわち

@mysql_select_db($database) or die("Unable to find database"); 

後者はmysql_*を持っているとして優れている、あなたはmysql_*機能やmysqli_*機能を混在させることはできません。まず、

@mysqli_select_db($database) or die("Unable to find database"); 
2

である必要があり、それを後者のスティックを選びました既に推奨されていません。

$conn = mysqli_connect($dbhost, $username, $dbpass, $database); 

$query = "INSERT INTO test VALUES ('', '$name', '$message')"; 

mysqli_query($conn, $query) or die (mysqli_error("error")); 

mysqli_close(); 

また、エラー・メッセージを抑制べきではありません。

@mysqli_select_db($database) or die("Unable to find database"); 

は、エラー報告を有効にする@を削除します。構文エラーの診断に非常に役立ちます。

関連する問題