2011-10-20 17 views
0

私は、私は非常に簡単なスクリプトと非常に単純なデータベース にそれが働いていない理由はわかりませんが間違っPHPがmySQLデータベースを見つけられませんか?

何かをしなければなりません。..

それもいずれかを与えていない

<?php 

error_reporting(E_ALL); 

$link = mysql_connect('localhost', 'root', 'password'); 
if(!$link) 
{ 
    die('Could not connect: ' . mysql_error()); 
} 

$database = mysql_select_db('test_db', $link); 
if(!$database) 
{ 
    die('Could not connect to database: ' . mysql_error()); 
} 

$result = mysqli_query($link, "SELECT forename FROM users WHERE id='1'"); 
if(!$result) 
    echo 'PROBLEM'; 
$row = mysqli_fetch_array($result); 
echo $row[0]; 

?> 

助けてくださいエラーが発生しました...

データベースが正常に接続され、1のIDを持つデータベースに1人のユーザーがおり、forenameはCristianです。 $result = mysqli_query

+7

て以降$結果からコードreplaceing試しに役立つはずしてみてください;'の代わりに 'エコー '問題' ; 'ただの問題の代わりに意味のあるメッセージを得る。 –

+0

これはまったく関係しないかもしれませんが、mysqliへのアクセス権があれば、mysqliとmysqlの呼び出しを混在させないことをお勧めします - すべてを使ってください:) –

答えて

5

だけ$row = mysqli_fetch_arrayで同じ$result = mysql_queryをuseingする

は、あなたが)(エコーmysql_error `試してみてください。この

$result = mysql_query("SELECT forename FROM users WHERE id='1'"); 
if(!$result) 
    echo 'PROBLEM'; 
$row = mysql_fetch_array($result); 
echo $row[0]; 

?> 
+0

あなたの推論を説明できますか? –

+5

これは正解です。具体的には、OPはmysql_関数を使用して接続していますが、mysqli_関数を使用してクエリとフェッチを行っています。 mysqli_関数は、mysql_関数による接続を完全に認識していません。解決策は、mysql_またはmysqli_関数のみを使用することです。彼らは前後に交換することはできません。 – Kibbee

+0

上記の答えはうまくいかず、それでも問題は反響します。 mysql_errorの問題を変更してもエラーは出力されません。 mysql関数とmysqli関数を混在させるために、私はこれまでこれを行いましたが問題は発生しませんでしたが、私は今それを変更します。私はデータベースからphpの読み込みに問題があるかもしれないと思っていますか?これ以上のアイデアは? – Cristian

関連する問題