В MySQL не добавляются данные моим парсером

310
09 января 2017, 23:51

Вот кусок моего кода, ответственный за запись в базу:

$string = file('./base_update.txt');
$update_array = array('id', 'cost', 'currency', 'main_head_string', 'logo_string', 'logo_alt', 'logo_pic', 'bg_head_pic');
$i = 0;
while ( $i < count($string) ) {
    $kletki = explode('|', $string[$i]);
    $k = 1;
    while ( $k < count($kletki) ) {
        mysql_query("UPDATE `ttttt` SET $update_array[$k] = $kletki[$k] WHERE id = $kletki[0]");
        $k++;
    }
    $i++;
}

Вот Файл "base_update.txt", который парсится:

8|111|usd|РЕГИСТРАЦИЯ|СТОИМОСТЬ|Гонконг|logo_hongkong.jpg|bg_hongkong.jpg
35|222|usd|ОТКРЫТИЕ|СТОИМОСТЬ|Hellenic|logo_hellenic.jpg|bg_bank_hellenic.jpg

Ситуация вот в чем: Данные пишутся только в колонку cost !

Что не так то ? Спасибо заранее за совет !

Answer 1

Привет, У меня всё нормально парсит, единственное, что немного не оптимально был написан код, я позволил себе его модифицировать немного с целью оптимизации.

В результате формируется один sql запрос. Попробуй, должен работать.

$string = file('./base_update.txt');
$update_array = array('id', 'cost', 'currency', 'main_head_string', 'logo_string', 'logo_alt', 'logo_pic', 'bg_head_pic');
$i = 0;
$sql = "UPDATE `ttttt` SET ";
$count_s = count($string);
while ( $i < $count_s ) {
    $kletki = explode('|', $string[$i]);
    $count_k = count($kletki);
    $k = 1;
    while ( $k < $count_k ) {
        if($k > 1){
            $sql .= ', ';
        }
        $sql .= "`{$update_array[$k]}` = '{$kletki[$k]}'";
        $k++;
    }
    $i++;
}
$sql .= " WHERE `id` = '{$kletki[0]}'";
mysql_query($sql);
Answer 2

Попробуйте запрос вот так написать:

mysql_query("UPDATE `ttttt` SET `$update_array[$k]` = '$kletki[$k]' WHERE id = $kletki[0]");
READ ALSO
Дополнительные поля modx revo

Дополнительные поля modx revo

Всем привет, сделал допполя на форме по этому уроку

424
Simple Html Dom Parser, как исключить class?

Simple Html Dom Parser, как исключить class?

Парсинг страницы с помощью PHP Simple HTML Dom Parser:

368
Как включить подсказки для JavaScript в Eclipse?

Как включить подсказки для JavaScript в Eclipse?

Для Java, HTML, CSS подсказки работают, а для JavaScript нет

366
Возможно ли передавать данные с веб-страницы(использую JavaScript) Windows приложению?

Возможно ли передавать данные с веб-страницы(использую JavaScript) Windows приложению?

Пример: Есть web-страница, при её открытии в браузере нужно передать windows приложению информацию, допустим исходный код страницы, и всё это(передачу...

271