次のデータをMySQLデータベースに保存します。PHPでjsonデータをPHPで保存する
次のコードは2つの警告を表示しています
1不正な文字列オフセットです。
2参照のみで変数を渡すことができます。
助けてください。
$db = new PDO('mysql:host=localhost;dbname=whois;charset=utf8mb4', 'root', '');
$items = array(
'Domain Name:' => 'domain.name',
'Domain ID:' => 'domain.handle',
'Sponsoring Registrar:' => 'domain.sponsor',
'Registrar ID:' => 'domain.sponsor',
'Domain Status:' => 'domain.status.',
'Status:' => 'domain.status.',
'Name Server:' => 'domain.nserver.',
'Nameservers:' => 'domain.nserver.',
'Maintainer:' => 'domain.referer',
);
$stmt = $db->prepare("INSERT INTO temdata VALUES(?,?,?,?,?,?,?,?,?)");
foreach ($items as $row) {
$stmt->bindParam(1, $row['domainname']);
$stmt->bindParam(2, $row['domainid']);
$stmt->bindParam(3, $row['registrar']);
$stmt->bindParam(4, $row['registrarid']);
$stmt->bindParam(5, $row['domainstatus']);
$stmt->bindParam(6, $row['status']);
$stmt->bindParam(7, $row['server']);
$stmt->bindParam(8, $row['nameservers']);
$stmt->bindParam(9, $row['maintainer']);
$stmt->execute();
}
値。 '$ row'は配列ではなく、値です。だから '$ row ['domainname']'、 '$ row ['domainid']'、...はすべて間違っています。 –
名前付きパラメータを使用した場合、データの配列をロードするのが面倒なので、これはもっと簡単になる可能性があります。 – RiggsFolly
これは私にそれを示しています致命的なエラー:未定義のメソッドを呼び出すPDOStatement :: bind_param() – Siddhesh