2009-04-29 21 views
0

PHP5がMySqlデータベースからintsを取得していない、この奇妙な問題があります。PHPデータの取得問題

$db = mysql_connect('XX.XX.XX.XX', 'DBName', 'DBPwd'); 
$query = 'Select * FROM Users WHERE UserName = \'Carlo\''; 
$result = mysql_query($query); 

if(!$result) 
{ 
    echo 'Could not successfuly run query: '.mysql_error(); 
    exit; 
} 

if(mysql_num_rows($result) == 0) 
{ 
    echo '0 results'; 
} 

$row = mysql_fetch_assoc($result); 

echo 'UserId: '.$row['UserId']; // THIS IS THE INT VALUE FROM THE DATABASE 

echo 'UserName: '.$row['UserName']; // THIS IS A STRING VALUE FROM THE DATABASE 

mysql_close($db); 

コードを印刷:これは私が持っているコードです

ユーザーID:

ユーザー名は:カルロ

任意の提案は大歓迎です!

答えて

1

は、配列を見てください - あなたは、おそらくどこかでタイプミスや誤大文字の単語を持っている:

print_r($row); 

これはあなたのすべてのキーと値を表示します。

1

は、このやって試してみてください:

var_dump(array_key_exists('UserId', $row)); 

var_dump($row['UserId']); 

を、ここで、出力を貼り付けます。

0

あなたは、接続文字列だが間違っている、あなたはまた、選択DBコマンドが必要になります。

また
$db = mysql_connect('XX.XX.XX.XX', 'user', 'DBPwd'); 
if ($db === false) { 
    trigger_error('Failed to connect to database', E_USER_ERROR); 
    echo 'Unable to connect to database. Please come again later.'; 
    exit; 
} 

if (!mysql_select_db('db_name', $db)) { 
    trigger_error('Failed to selected database', E_USER_ERROR); 
    echo 'Unable to connect to database. Please come again later.'; 
    exit; 
} 

、列UserIdとして、あなたのテーブルを確保するために確認してください。

0

パーフェクト!それがうまくいけば、私は大文字で間違った単語を持っていました、それはUserIdではなくUserIDでした。私は通常、データベースのIDフィールドを「SomethingId」という名前にしていますが、それは私がそれをしていない理由です!

ありがとうございます!

+2

次に、あなた自身の質問に答える代わりに、someonesの回答を受け入れて代わりに回答を投稿する必要があります。 –

関連する問題