1
<?php 

    function insert($name, $desc, $year, $rating, $poster, $category_id){
        $mysqli = new mysqli('localhost', 'root', '', 'kinomonster');

        if (mysqli_connect_errno()) {
            print_f('Соединение не установлено');
            exit();
        }

        $mysqli->set_charset(utf8);

        $query = "INSERT into movie VALUES(null, '$name', '$desc', '$year', '$rating', '$poster', Now(), '$category_id')";

        $xml = simplexml_load_file("xml/movies.xml") or die("Error: Cannot creat object");

        $result = false;
        if ($mysqli->query($query)) {
            $result = true;
        }

        return $result;
    }
    $xml = simplexml_load_file("xml/movies.xml") or die("Error: Cannot creat obj```ect");

    # echo count($xml);

    $title = null;
    $title_orign = null;
    $post = null;
    $rating = null;
    $year = null;


    foreach($xml as $movie_key => $movie) {
        $title =  $movie->title_russian;
        $title_orign = $movie->title_original;
        $year =  $movie->year;

        foreach ($movie->poster->big->attributes() as $poster_key => $poster){
            $post = $poster;
        }   

        if ($movie->imdb) {
            $rating = $movie->imdb->attributes()['rating'];
        }       

        insert($title, $title_orign, $year, $rating, $post, 1);
    }

    echo "<pre>";
    print_r($xml);
    echo "</pre>";  
 ?>

Ошибок не показывает, но запись не жоавбляется

  • Покажите содержимое переменной $query после присвоения и подстановки (на момент выполнения $mysqli->query($query)). Покажите структуру таблицы movie. – Akina Oct 11 '19 at 07:03
  • https://prnt.sc/phsfb9 – Алексей Гринев Oct 11 '19 at 07:21
  • 1
    И в каждом запуске фунции вы генерите новый коннект к бд? И что здесь должно показывать ошибки, если вы их вообще нигде не проверяете? – u_mulder Oct 11 '19 at 07:21
  • Структура таблицы - это её CREATE TABLE, а не фотография. И важные дополнительные сведения нужно добавлять в текст вопроса, а не размещать в комментарии. – Akina Oct 11 '19 at 07:22
  • Вставьте поля в запрос и вам понятней будет, и нам, и запрос может выполнится – mpakfm Oct 11 '19 at 06:51
  • Не понял, куда вставить поля? Я данные из xml беру – Алексей Гринев Oct 11 '19 at 06:54
  • INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...); вот эти column1, column2, на примере и есть поля. У вас запрос без полей – mpakfm Oct 11 '19 at 07:08
  • И если с полями запрос не выполнится, то сразу сюда скиньте ещё и структуру таблицы. Что бы видеть как в ней описаны ваши поля. – mpakfm Oct 11 '19 at 07:12

0 Answers0