ユーザーデータを持つJSONファイルをPHPのMySQLのテーブルに移行する必要があります。すでにDBと接続していました。テーブルを作成してJSONを配列にデコードしました。私ができないことは、配列データをMySQL Usersテーブルに挿入することです。PHPを使ってMySQLテーブルに配列を挿入するには?
私のJSONは次のようになります。私は、各ユーザーの値をこのように得た
{
"nombre":"asudhau",
"apellido":"uhsaudhau",
"pass":"$2y$10$KAg3wt7bBjphgdCNJf4VXe.an8lOnlOvWVdVsh2Qsws0dbhWiDwkO",
"mail":"[email protected]",
"sexo":"F",
"id":34,
"nacimiento":"2016-10-06"
}
{
"nombre":"abudasd",
"apellido":"hasdua",
"pass":"$2y$10$c781KdL3ERgDCnP6MR28xuf\/dnKjuVajklc0uSj2FnBrZSB1H88Si",
"mail":"[email protected]",
"sexo":"F",
"id":35,
"nacimiento":"1990-02-03"
}
{
"nombre":"audihaiudh",
"apellido":"uiahsdiuahdi",
"pass":"$2y$10$Q7VjafKxt\/kuJS1BrslF0uSZPwHe7Hvp6olMxetgY31KcmMT9dIo2",
"mail":"[email protected]",
"sexo":"F",
"id":36,
"nacimiento":"1999-02-03"
}
:
$conn = new PDO('mysql:host=localhost;dbname=dh_usuarios;charset=UTF8mb4', 'root', '');
$jsondata = file_get_contents('../usuarios.json');
$usuariosArray = explode(PHP_EOL, $jsondata);
foreach ($usuariosArray as $usuario) {
$jsondata = json_decode($usuario.PHP_EOL, true);
$jsonarray[] = array($jsondata);
}
foreach ($jsonarray as $row) {
$nombre = $row[0]['nombre'];
$apellido = $row[0]['apellido'];
$pass = $row[0]['pass'];
$mail = $row[0]['mail'];
$sexo = $row[0]['sexo'];
$id = $row[0]['id'];
$nacimiento = $row[0]['nacimiento'];
}
は今、私は私が既に作成した表に、このユーザーデータを挿入したいですMySQLで私はそれを行う方法を知らない。
私はこれを試しましたが、データを挿入しません。
$stmt = $conn->prepare('
INSERT INTO dh_usuarios(nombre, apellido, pass, mail, sexo, id, nacimiento)
VALUES(:nombre, :apellido, :pass, :mail, :sexo, :id, :nacimiento);
');
$stmt->execute([
':nombre' => $nombre,
':apellido' => $apellido,
':pass' => $pass,
':mail' => $mail,
':sexo' => $sexo,
':id' => $id,
':nacimiento' => $nacimiento,
]
);
私は何をすべきですか? (私の悪い英語のために申し訳ありません、私はアルゼンチン出身です)
DBからエラーをチェックしましたか? – Machavity
私はデータベースからのエラーではないようですが、私はどこかで間違いを犯したと思いますが、私はそれを理解できません.... –
あなたに何かあるかどうかチェックするために 'var_dump($ jsondata)'を試してみてください。 –