私はMS Accessデータベースを持っています。レコードを取得してから2次元配列に書きたい。私はレコードセットのメモリ領域と配列のメモリ領域を同じだと思っています。レコードセットを閉じると、配列の値にアクセスできなくなるためです。 $rs
でMS Access ADOレコードセットと2次元配列
Error: Catchable fatal error: Object of class variant could not be converted to string in ...
$databaselocation = $_SERVER['DOCUMENT_ROOT'] . "ornek.mdb";
$conn = new COM('ADODB.Connection') or exit('Cannot start ADO.');
$conn->Open("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=$databaselocation");
$SQL1 = "SELECT * from konu";
$rs = new com("ADODB.RecordSet") or die("Recordset cant create!");
$rs->Open($SQL1,$conn,1,3);
$say = $rs->RecordCount();
echo "Row Counts: " . $say . "<br><br>";
$dizi = array(array());
for($a=0; $a<$say; $a++)
{
$dizi[$a][0] = $rs[0];
$dizi[$a][1] = $rs[1];
$rs->MoveNext;
}
$rs->Close(); $conn->Close();
$rs = null; $conn = null;
echo $dizi[0][0]; // this line ERROR same below
for($a=0; $a<$say; $a++)
{
echo $dizi[$a][0] . " - " . $dizi[$a][1] . "<br>"; // ERROR
}
$ diziデータを表示/印刷できますか? print_r($ dizi); –
実際には、 '$ dizi'は空白ですか? 'var_dump($ dizi)'を実行してください。興味深いことに、COMインターフェイスではなくPHP APIを使ってMS Accessに接続するための[PDO-ODBC](http://php.net/manual/en/ref.pdo-odbc.php)はありませんか? – Parfait