Попытка создать HTML-таблицы в сообщениях из данных в SQL-таблицах

Я пытаюсь создать массивный набор циклов через несколько разных таблиц SQL в моей установке WordPress. Мне удалось создать пользовательские сообщения из данных в таблицах sql, но вставка самих данных из этих таблиц в сообщения - другое дело. Иногда циклы foreach повторяются и дублируются, поэтому у меня тоже есть эта проблема.

function runposts(){

    global $wpdb;
    global $row;
    $rows = $wpdb->get_results("SELECT * FROM routes_txt");
    foreach ( $rows as $row ) {

      $route_name = $row->route_short_name;

      if (get_page_by_title($route_name, OBJECT, 'routes')) {

      } else {

      $table =  '<h1>'. $route_name .'</h1>';


       $trips = $wpdb->get_results("SELECT * FROM trips_txt WHERE route_id = '$row->route_id'");
       foreach ( $trips as $trip ) {
           $days  = $wpdb->get_results("SELECT * FROM calendar_txt WHERE service_id = '$trip->service_id'");
           foreach ( $days as $day ) {
             $day->start_date;
             $startdate = date("m-d-Y", strtotime($day->start_date));  
             $day->end_date;
             $startweekday = "";
             $endweekday = "";
             if ( $day->monday = 1 ){
                 $startweekday = "Mon";
             } else if ( $day->tuesday = 1 ){
                 $startweekday = "Tues";
             } else if ( $day->wednesday = 1 ){
                 $startweekday = "Wed";
             } else if ( $day->thursday = 1 ){
                 $startweekday = "Thur";
             } else if ( $day->friday = 1 ){
                 $startweekday = "Fri";
             } else if ( $day->saturday = 1 ){
                 $startweekday = "Sat";
             } else if ( $day->Sunday = 1 ){
                 $startweekday = "Sun";
             }    
             if ( $day->monday = 1 ){
                 $endweekday = "Mon";
             }
             if ( $day->tuesday = 1 ){
                 $endweekday = "Tues";
             }
             if ( $day->wednesday = 1 ){
                 $endweekday = "Wed";
             }
             if ( $day->thursday = 1 ){
                 $endweekday = "Thur";
             }
             if ( $day->friday = 1 ){
                 $endweekday = "Fri";
             }
             if ( $day->saturday = 1 ){
                 $endweekday = "Sat";
             }
             if ( $day->Sunday = 1 ){
                 $endweekday = "Sun";
             }    
           };
           $table .= '<h2>Effective '. $startdate .' ';
           $table .= $startweekday;
           $table .= ' - ';
           $table .= $endweekday .'</h2>';
           $table .= '<table><tr>';
           $offdays  = $wpdb->get_results("SELECT * FROM calendar_dates_txt WHERE service_id = '$trip->service_id' AND exception_type = 2");
           foreach ( $offdays as $offday ) {
             $offday->date;
           };
           $stops = $wpdb->get_results("SELECT * FROM stops_txt WHERE stop_id = '$trip->stop_id'");
           foreach ( $stops as $stop ) {
             $table .= '<td><table data-lat = "'. $stop->stop_lat .'"  data-lon = "'. $stop->stop_lon .'"><thead><tr><th>'.$stop->stop_name.'</th></tr></thead><tbody>';
             $stoptimes = $wpdb->get_results("SELECT * FROM stop_times_txt WHERE stop_id = $stop->stop_id");
             foreach ( $stoptimes as $stoptime ) {
               $table .= '<tr><td>'. $stoptime->arrival_time .'</td></tr>';
             }
             $table .= '</tbody></table></td>';
           }
           $table .= '</tr></table>';
       }



        // Insert the post into the database
        $my_post = array(
          'post_title'    => $row->route_short_name,
          'post_content'  => $table,
          'post_status'   => 'publish',
          'post_type'     => 'routes',
          'post_author'   => 1
        );

        wp_insert_post( $my_post );
    };
};
}

add_action('init', 'runposts');

Если у вас есть такие вещи, как if ( $day->monday = 1 ){, единственный = - это назначение, == - для тестирования.

Nigel Ren 24.10.2018 16:45

это помогает, спасибо.

Benlov 24.10.2018 17:27
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
2
34
0

Другие вопросы по теме