2011-07-19 12 views
0

最近、PHPとSQLiteを使って作業を始めましたが、PHP配列に問題があります(私はそう思います)。SQLiteとPHP配列の問題

<?php 
$dbo = new SQLiteDatabase("rsc/db.sqlite"); 
$test = $dbo->arrayQuery("DROP TABLE users;"); 
$test = $dbo->arrayQuery("CREATE TABLE \"users\"(name text, avatar text);"); 
$test = $dbo->arrayQuery("INSERT INTO users(name, avatar) VALUES('zad0xsis', 'http://zad0xsis.net/');"); 

// get number of rows changed 
$changes = $dbo->changes(); 
echo "<br />Rows changed: $changes<br />"; 

// Get and show inputted data 
$tableArray = $dbo->arrayQuery("SELECT * FROM users;"); 
echo "Table Contents\n"; 
echo "<pre>\n"; 
print_r($tableArray); 
echo "\n</pre>"; 

?> 

とデータを示す(print_r($tableArray);)私は、この配列を取得:これは私が使用するコードです

Array 
(
    [0] => Array 
     (
      [0] => zad0xsis 
      [name] => zad0xsis 
      [1] => http://zad0xsis.net/ 
      [avatar] => http://zad0xsis.net/ 
     ) 

) 

値が重複している理由を私は知らない、のように[0]と[名前]ですが、データが表示されます。私はprint_r($tableArray["name"]);私は値を取得する必要がありますをしようが、それは私が間違ってやっている何:(何も印刷していない場合?ありがとう!

+0

エコー$ tableArray [0] [ "名前"];おそらく – krifur

+0

このような印刷を試してください。 'echo $ tableArray [0] ['name'];' ' –

+1

mysql_fetch_array文を使用しているので値が重複しています。単一値のmysql_fetch_assocを試してください。 – krifur

答えて

3

さて、それは

$tableArray[0] 

または両方を選択するのに役立ちます

$tableArray['name']; 

それは大丈夫です、あなたの問題へ

:あなたは

する必要がありますprint_r($tableArray[0]['name'])

または

print_r($tableArray[0][0])

+0

もう一度見てください!それは私の問題を解決しました;) – pmerino

+0

私はStackOverflowが私を許すとき、7分で答えを受け入れるでしょう;) – pmerino