PHP를 사용하여 JSON 파일에서 MYSQL 데이터베이스에 데이터를 추가 할 수 없습니다.

juwss

저는 PHP를 처음 사용합니다. 나는 지금 몇 시간 동안이 작업에 어려움을 겪고 있습니다. 이전에는 json_encode를 사용하여 MYSQL에서 JSON 파일로 데이터를 가져 왔습니다. 이제 JSON 파일의 동일한 데이터를 새 MYSQL 데이터베이스에 추가하고 추가하려고합니다. MYSQL 데이터베이스에 전달하기 전에 배열을 문자열로 변환하는 데 문제가 있습니다. 데이터베이스가 작동하고 배열에서 $ values ​​대신 수동 값을 삽입하여 "플레이어"를 추가 할 수있었습니다. 내 코드는 다음과 같습니다.

<?php
//open connection to mysql db
$con = mysqli_connect("localhost","root","","scoreboard2") or die("Error " . mysqli_error($con));

$scorefile = file_get_contents('scores.json');
$Score = json_decode($scorefile, true);

echo '<pre>' . print_r($Score, true) . '</pre>';

foreach ($Score as $field => $value) {
    // Use $field and $value here

    print_r($field . '=>' . $value . '<br/>', true);

    //mysqli_query($con, "INSERT INTO scores (name, score, time) VALUES ($value->name, $value->score, $value->time)");
}

//mysqli_close($con);
?>

JSON 파일은 다음과 같습니다.

[
 {"id":"22",
  "name":"Jack",
  "score":"2142",
  "time":"196:13",
  "ts":"2016-02-23 15:36:23",
  "date":"2016-02-23"},

 {"id":"23",
  "name":"Bob",
  "score":"7026",
  "time":"35:54",
  "ts":"2016-02-23 15:40:33"}
]

등. 그리고 "오류"는 다음과 같습니다.

알림 : 13 행의 F : \ XAMPP \ htdocs \ JSON_MySQL \ decode.php의 배열에서 문자열로 변환

RiggsFolly

문제는 json_decode()as의 매개 변수 2를 사용하여 .json 파일의 데이터를 배열로 변환한다는 것 true입니다.

이것은 객체를 배열로 변환하므로이 줄에서 사용하는 구문이 잘못되었습니다.

mysqli_query($con, "INSERT INTO scores 
                           (name, score, time) 
                    VALUES ($value->name, $value->score, $value->time)");

객체 표기법을 사용하고 있기 때문입니다.

그래서이 줄을

$Score = json_decode($scorefile, true);

$Score = json_decode($scorefile);

그래서

?php
$con = mysqli_connect("localhost","root","","scoreboard2") or die("Error " . mysqli_error($con));

$scorefile = file_get_contents('scores.json');
$Score = json_decode($scorefile);

foreach ($Score as $object) {

    mysqli_query($con, "INSERT INTO scores 
                               (name, score, time) 
                        VALUES ('{$object->name}', '{$object->score}', '{$object->time}')");
}

mysqli_close($con);
?>

또한 작은 따옴표로 값을 따옴표로 묶었 고 {}큰 따옴표로 묶인 리터럴 내에서 개체 또는 배열 표기법을 사용할 때 필요한 개체 속성을 래핑했습니다 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

PHP를 사용하여 mysql 데이터베이스에 데이터를 삽입 할 수 없습니다.

분류에서Dev

(PHP, AJAX, JQ)를 사용하여 MySQL 데이터베이스에 데이터를 삽입 할 수 없습니다.

분류에서Dev

PHP를 사용하여 MySQL 데이터베이스에서 모든 데이터를 추출 할 수 없습니다.

분류에서Dev

AJAX를 사용하여 mysql 데이터베이스에 데이터를 삽입 할 수 없습니다.

분류에서Dev

PHP 및 MySQL을 사용하여 데이터베이스에서 가져 오는 동안 중복 데이터를 피할 수 없습니다.

분류에서Dev

json을 사용하여 데이터베이스에 데이터를 삽입 할 수 없습니다.

분류에서Dev

POST 메서드를 사용하여 데이터베이스에 새 정보를 추가 할 수 없습니다.

분류에서Dev

PHP의 mysql 데이터베이스에 json 데이터를 삽입 할 수 없습니다.

분류에서Dev

PHP mysqli_connect ()를 사용하여 MySQL 데이터베이스에 연결할 수 없습니다.

분류에서Dev

Ajax 및 PHP를 사용하여 mysql 데이터베이스에 입력을 업로드 할 수 없습니다.

분류에서Dev

PHP를 사용하여 MYSQL 데이터베이스에 날짜와 시간을 삽입 할 수 없습니다.

분류에서Dev

Php를 사용하여 MYSQL 데이터베이스에 연결할 수 없습니다.

분류에서Dev

Java를 사용하여 VM에서 mysql 데이터베이스에 연결할 수 없습니다.

분류에서Dev

reactFire를 사용하여 데이터베이스에서 Firebase json을 검색 할 수 없습니다.

분류에서Dev

쉘 스크립트를 사용하여 mysql 데이터베이스에 연결할 수 없습니다.

분류에서Dev

C ++에서 추가 모드를 사용하여 파일에 데이터를 삽입 할 수 없습니다.

분류에서Dev

XAMPP에서 PHP를 사용하여 MYSQL 데이터베이스 테이블 필드를 업데이트 할 수 없습니다.

분류에서Dev

생산 Laravel 증기를 사용하여 MySQL 데이터베이스에 연결할 수 없습니다

분류에서Dev

AngularJs를 사용하여 텍스트 상자의 데이터를 데이터베이스에 추가 할 수 없습니다.

분류에서Dev

PHP를 사용하여 파일에 데이터를 추가 할 수 없음

분류에서Dev

MySQL 데이터베이스에 데이터를 삽입 할 수 없습니다.

분류에서Dev

mysql 데이터베이스에서 사용자 데이터를 가져올 수 없습니다.

분류에서Dev

Firebase에 가입 한 후 사용자를 Firestore 데이터베이스에 추가 할 수 없습니다.

분류에서Dev

Django를 사용하여 데이터베이스에 데이터를 삽입 할 수 없습니다.

분류에서Dev

ajax 및 linq를 사용하여 데이터베이스에 데이터를 저장할 수 없습니다.

분류에서Dev

PHP가 양식 데이터를 MySQL 데이터베이스로 처리하도록 할 수 없습니다.

분류에서Dev

내 컴퓨터에서 MySQL의 데이터베이스에 데이터를 추가 할 수있는 권한을 다른 PC에 부여하는 방법

분류에서Dev

mysql 데이터베이스에 POST 콘텐츠를 추가 할 수 없습니다.

분류에서Dev

옵션 (textarea)을 사용하여 데이터베이스에 데이터를 삽입 할 수 없습니다.

Related 관련 기사

  1. 1

    PHP를 사용하여 mysql 데이터베이스에 데이터를 삽입 할 수 없습니다.

  2. 2

    (PHP, AJAX, JQ)를 사용하여 MySQL 데이터베이스에 데이터를 삽입 할 수 없습니다.

  3. 3

    PHP를 사용하여 MySQL 데이터베이스에서 모든 데이터를 추출 할 수 없습니다.

  4. 4

    AJAX를 사용하여 mysql 데이터베이스에 데이터를 삽입 할 수 없습니다.

  5. 5

    PHP 및 MySQL을 사용하여 데이터베이스에서 가져 오는 동안 중복 데이터를 피할 수 없습니다.

  6. 6

    json을 사용하여 데이터베이스에 데이터를 삽입 할 수 없습니다.

  7. 7

    POST 메서드를 사용하여 데이터베이스에 새 정보를 추가 할 수 없습니다.

  8. 8

    PHP의 mysql 데이터베이스에 json 데이터를 삽입 할 수 없습니다.

  9. 9

    PHP mysqli_connect ()를 사용하여 MySQL 데이터베이스에 연결할 수 없습니다.

  10. 10

    Ajax 및 PHP를 사용하여 mysql 데이터베이스에 입력을 업로드 할 수 없습니다.

  11. 11

    PHP를 사용하여 MYSQL 데이터베이스에 날짜와 시간을 삽입 할 수 없습니다.

  12. 12

    Php를 사용하여 MYSQL 데이터베이스에 연결할 수 없습니다.

  13. 13

    Java를 사용하여 VM에서 mysql 데이터베이스에 연결할 수 없습니다.

  14. 14

    reactFire를 사용하여 데이터베이스에서 Firebase json을 검색 할 수 없습니다.

  15. 15

    쉘 스크립트를 사용하여 mysql 데이터베이스에 연결할 수 없습니다.

  16. 16

    C ++에서 추가 모드를 사용하여 파일에 데이터를 삽입 할 수 없습니다.

  17. 17

    XAMPP에서 PHP를 사용하여 MYSQL 데이터베이스 테이블 필드를 업데이트 할 수 없습니다.

  18. 18

    생산 Laravel 증기를 사용하여 MySQL 데이터베이스에 연결할 수 없습니다

  19. 19

    AngularJs를 사용하여 텍스트 상자의 데이터를 데이터베이스에 추가 할 수 없습니다.

  20. 20

    PHP를 사용하여 파일에 데이터를 추가 할 수 없음

  21. 21

    MySQL 데이터베이스에 데이터를 삽입 할 수 없습니다.

  22. 22

    mysql 데이터베이스에서 사용자 데이터를 가져올 수 없습니다.

  23. 23

    Firebase에 가입 한 후 사용자를 Firestore 데이터베이스에 추가 할 수 없습니다.

  24. 24

    Django를 사용하여 데이터베이스에 데이터를 삽입 할 수 없습니다.

  25. 25

    ajax 및 linq를 사용하여 데이터베이스에 데이터를 저장할 수 없습니다.

  26. 26

    PHP가 양식 데이터를 MySQL 데이터베이스로 처리하도록 할 수 없습니다.

  27. 27

    내 컴퓨터에서 MySQL의 데이터베이스에 데이터를 추가 할 수있는 권한을 다른 PC에 부여하는 방법

  28. 28

    mysql 데이터베이스에 POST 콘텐츠를 추가 할 수 없습니다.

  29. 29

    옵션 (textarea)을 사용하여 데이터베이스에 데이터를 삽입 할 수 없습니다.

뜨겁다태그

보관