2014-02-13 4 views
-4

Я пытаюсь в течение некоторого времени вставлять данные из массива JSON в базу данных mysql с помощью php, но то, что я пробовал, не работает.Как вставить данные из массива json в базу данных mysql?

мой массив выглядит так ...

Array 
( 
    [] => -4.0533 
    [bert] => 2 
    [earnie] => 0.25 
    [bigbird] => 0.25 
    [grouch] => 1.25 
) 

Я пытаюсь вставить эти данные в базу данных MySQL, которая имеет таблицу с именем «useramounts» таблица содержит 2 колонки. (имя пользователя, количество), так что каждая строка содержит имя пользователя и соответствующую сумму

это, вероятно, очень просто для вас, но я никогда не делал этого раньше. Я попытался найти решение Google, но безрезультатно. Может кто-нибудь мне помочь?

+0

Что вы пробовали? Возможно, чтение на PHP/MySQL и после учебника - лучшее место для начала. Если у вас есть определенный вопрос во время процесса, не стесняйтесь спрашивать его здесь. – Joel

+0

благодарите joel за вежливый ответ, но я сдаюсь сейчас, поэтому не беспокойтесь об этом. –

+0

Возможный дубликат [Вставить массив JSON в mysql db из файла php] (http://stackoverflow.com/questions/19429028/insert-json-array-in-mysql-db-from-a-php-file) – jww

ответ

2

Что вы пытаетесь?

Попробуйте этот подход:

  • Преобразовать JSON в PHP массив (json_decode())
  • Loop через массив, получить ключ и значение для каждой записи (foreach(){}, array_keys())
  • Создать одну строку с вставкой и добавьте VALUES() для каждой строки
  • Выполнение запроса после цикла

    $keys = array_keys($array);    // get the value of keys 
    $rows = array();       // create a temporary storage for rows 
    foreach($keys as $key) {     // loop through 
        $value = $array[$key];    // get corresponding value 
        $rows[] = "('" . $key . "', '" . $value . "')"; 
                 // add a row to the temporary storage 
    } 
    $values = implode(",", $rows);   // 'glue' your rows into a query 
    $query = "INSERT INTO ... VALUES " . $values; 
                 // write the rest of your query 
    ...          // execute query 
    

Как только вы найдете конкретный вопрос, не стесняйтесь открывать другое сообщение.

Смежные вопросы