Доброго времени суток. Вопрос таков, у меня есть шесть таблиц в них есть энное количество строк (количество строк будет меняться по моей надобности в ручном режиме), мне нужно что бы в заданное время (раз в сутки) из таблиц строки перезаписывались в другие таблицы. Код (Text): (таблица 1 {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} ) (таблица 2 {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} ) (таблица 3 {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} ) (таблица 4 {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} ) (таблица 5 {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} ) (таблица 6 {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} {строки с датой ***** в базе через "date"} ) это не код а просто наглядности ради) mysql бд. К сожалению я не обладаю познанием в php что бы каждую строку в таблице проверяло на дату и с наступлением сегодняшнего числа строки перезаписывались в нужные мне таблицы( сразу скажу общее количество строк во всех таблицах не будет превышать 50-70. что то вроде: "если дата сегодня то строка с датой сегодня удаляется из таблицы 5 и пишется в таблицу 4. " ну и вот таким образом проверять все строки и перезаписывались в определённые)) описал я как всегда весьма сумбурно, извиняйте. Буду очень благодарен в помощи, если с базой я еще как то более или менее а вот как проверять строки на соответствие с сегодняшним числом я вообще без понятия) да и как всегда гугл меня игнорирует.....
Проверить на дату с наступлением сегодняшнего числа это как два пальца об асфальт. Расскажи лучше что это за таблицы, что за данные в них хранятся, зачем переносить из таблицы в таблицу. А вообще учи MySQL для начала, потом все остальное.
Код (Text): <?php function get_server(){ global $link; $sql = "SELECT * FROM `server_name` ORDER BY `priority`,`date`"; $result = mysqli_query($link, $sql); $server = mysqli_fetch_all($result, MYSQLI_ASSOC); return $server; } ?> <?php function get_open(){ global $link; $sql = "SELECT * FROM `today_open` ORDER BY `priority`"; $result = mysqli_query($link, $sql); $server = mysqli_fetch_all($result, MYSQLI_ASSOC); return $server; } ?> <?php function get_vip_open(){ global $link; $sql = "SELECT * FROM `vip_open_left` ORDER BY `priority`"; $result = mysqli_query($link, $sql); $server = mysqli_fetch_all($result, MYSQLI_ASSOC); return $server; } ?> <?php function get_right_server(){ global $link; $sql = "SELECT * FROM `server_right_name` ORDER BY `priority`"; $result = mysqli_query($link, $sql); $server = mysqli_fetch_all($result, MYSQLI_ASSOC); return $server; } ?> <?php function get_right_yesterday(){ global $link; $sql = "SELECT * FROM `right_yesterday` ORDER BY `priority`"; $result = mysqli_query($link, $sql); $server = mysqli_fetch_all($result, MYSQLI_ASSOC); return $server; } ?> <?php function get_right_vip(){ global $link; $sql = "SELECT * FROM `vip_open_right` ORDER BY `priority`"; $result = mysqli_query($link, $sql); $server = mysqli_fetch_all($result, MYSQLI_ASSOC); return $server; } ?> Я не уверен что правильно) но работает как мне нужно)) кажется) Код (Text): <?php $server = get_right_server(); ?> <?php foreach($server as $serv): ?> <div class="server_section"> <a href="<?=$serv['link_server']?>" rel="nofollow" target="_blank" class="server_link <?=$serv['status']?>"> <div class="icon_name"> <span class="icon"><?=$serv['fa fa']?></span> <span class="name"><?=$serv['name_server']?></span> </div> <div class="reit_date"> <span class="reit"><?=$serv['rate_server']?></span> <span class="chronicl"><?=$serv['chronicl_server']?></span> <span class="date"><?=$serv['date_server']?></span> </div> </a> </div> <?php endforeach;?> вот так вставляю данные из таблицы) при добавлении строки заполненной и новый div добавляется в разметку(через инспектор если смотреть) честно, я бы с превеликим удовольствием допирал до всего самостоятельно, но мой скудный опыт + - 2 месяца не даёт этого сделать (html,css,js,php,mysql) два месяца назад я даже не знал что это)) неделю назад узнал о php и базах)) в таблице просто указанные параметры(название и всяк такое) их 6 штук как я печатал, и мне нужно что бы в всё сверялось, если сегодня и у строки дата стоит 28 декабря то перешла строка в таблицу под названием "сегодня", потом из таблицы "сегодня" в таблицу "вчера" ну из таблицы вчера в таблицу неделю назад и тд.
Хочешь фокус: PHP: function get_table($table_name){ global $link; $sql = "SELECT * FROM `$table_name` ORDER BY `priority`,`date`"; $result = mysqli_query($link, $sql); $server = mysqli_fetch_all($result, MYSQLI_ASSOC); return $server; } $server_name = get_table(server_name); $today_open = get_table(today_open); $vip_open_left = get_table(vip_open_left); $server_right_name = get_table(server_right_name); $right_yesterday = get_table(right_yesterday); $vip_open_right = get_table(vip_open_right); Функции как раз для этого придумали. --- Добавлено --- И все же, накой тебе столько таблиц? --- Добавлено --- Нельзя что ли сделать одну с шестью колонками?
такое ощущение, что хотите по дням недели разбивку сделать и что-то мне подсказывает - что там вообще не нужно никаких удалений и перемещений данных, достаточно грамотно вывести все из одной таблицы с разбиением на даты... сформулируйте задачу - а вам подскажут как лучше сделать, P.S. Если весе же вот прям надо и так "лучше" - cron нужно задействовать
я бы с удовольсвием, но в разметке html у меня 2 столбца где по 3 параметра, а как сделать разбивку из одной таблицы в html где два столбца в которых по 3 секции, я боюсь что запутаюсь напрочь. --- Добавлено --- Код (Text): <?php require '/app/header.php'; ?> <div class="container"> <div class="server_list_soon"> <div class="box__select"> <div class="h_name h_first"> <h1>Список серверов ожидающих открытие :</h1> </div> <?php $server = get_vip_open(); ?> <?php foreach($server as $serv): ?> <div class="server_section"> <a href="<?=$serv['link_server']?>" rel="nofollow" target="_blank" class="server_link <?=$serv['status']?>"> <div class="icon_name"> <span class="icon"><?=$serv['fa fa']?></span> <span class="name"><?=$serv['name_server']?></span> </div> <div class="reit_date"> <span class="reit"><?=$serv['rate_server']?></span> <span class="chronicl"><?=$serv['chronicl_server']?></span> <span class="date"><?=$serv['date_server']?></span> </div> </a> </div> <?php endforeach;?> </div> <div class="box__select"> <div class="h_name"> <h2>Сегодня откроются :</h2> </div> <?php $server = get_open(); ?> <?php foreach($server as $serv): ?> <div class="server_section"> <a href="<?=$serv['link_server']?>" rel="nofollow" target="_blank" class="server_link <?=$serv['status']?>"> <div class="icon_name"> <span class="icon"><?=$serv['fa fa']?></span> <span class="name"><?=$serv['name_server']?></span> </div> <div class="reit_date"> <span class="reit"><?=$serv['rate_server']?></span> <span class="chronicl"><?=$serv['chronicl_server']?></span> <span class="date"><?=$serv['date_server']?></span> </div> </a> </div> <?php endforeach;?> </div> <div class="box__select"> <div class="h_name"> <h3>На этой неделе и позже :</h3> </div> <?php $server = get_server(); ?> <?php foreach($server as $serv): ?> <div class="server_section"> <a href="<?=$serv['link_server']?>" rel="nofollow" target="_blank" class="server_link <?=$serv['status']?>"> <div class="icon_name"> <span class="icon"><?=$serv['fa fa']?></span> <span class="name"><?=$serv['name_server']?></span> </div> <div class="reit_date"> <span class="reit"><?=$serv['rate_server']?></span> <span class="chronicl"><?=$serv['chronicl_server']?></span> <span class="date"><?=$serv['date_server']?></span> </div> </a> </div> <?php endforeach;?> </div> </div> <div class="server_lest_already"> <div class="box__select"> <div class="h_name h_first"> <h1>Список уже открывшихся серверов :</h1> </div> <?php $server = get_right_vip(); ?> <?php foreach($server as $serv): ?> <div class="server_section"> <a href="<?=$serv['link_server']?>" rel="nofollow" target="_blank" class="server_link <?=$serv['status']?>"> <div class="icon_name"> <span class="icon"><?=$serv['fa fa']?></span> <span class="name"><?=$serv['name_server']?></span> </div> <div class="reit_date"> <span class="reit"><?=$serv['rate_server']?></span> <span class="chronicl"><?=$serv['chronicl_server']?></span> <span class="date"><?=$serv['date_server']?></span> </div> </a> </div> <?php endforeach;?> </div> <div class="box__select"> <div class="h_name"> <h1>Вчера открылись :</h1> </div> <?php $server = get_right_yesterday(); ?> <?php foreach($server as $serv): ?> <div class="server_section"> <a href="<?=$serv['link_server']?>" rel="nofollow" target="_blank" class="server_link <?=$serv['status']?>"> <div class="icon_name"> <span class="icon"><?=$serv['fa fa']?></span> <span class="name"><?=$serv['name_server']?></span> </div> <div class="reit_date"> <span class="reit"><?=$serv['rate_server']?></span> <span class="chronicl"><?=$serv['chronicl_server']?></span> <span class="date"><?=$serv['date_server']?></span> </div> </a> </div> <?php endforeach;?> </div> <div class="box__select"> <div class="h_name"> <h1>Открывщиеся сервера :</h1> </div> <?php $server = get_right_server(); ?> <?php foreach($server as $serv): ?> <div class="server_section"> <a href="<?=$serv['link_server']?>" rel="nofollow" target="_blank" class="server_link <?=$serv['status']?>"> <div class="icon_name"> <span class="icon"><?=$serv['fa fa']?></span> <span class="name"><?=$serv['name_server']?></span> </div> <div class="reit_date"> <span class="reit"><?=$serv['rate_server']?></span> <span class="chronicl"><?=$serv['chronicl_server']?></span> <span class="date"><?=$serv['date_server']?></span> </div> </a> </div> <?php endforeach;?> </div> </div> </div> <?php require '/app/footer.php'; ?> вот это полный код index.php
да вы правы, что то вроде по дням недели) да дело не в лучше) просто такова структура моего сайтика) всё вот сделал а это никак не могу))) слишком мал опыт.
@GlebSharapov, сдается мне участники форума очень скоро потеряют интерес к вашим темам. Судя по вышенаписанному вам не нужны знания причем не только узкоспециализированные, но даже базовые. Я даже советовать вам купить и прочитать книгу не буду. P.S. нет там у вас никакой структуры, там у вас даже до говнокода не дотягивает, за два месяца можно много базовых знаний набрать, ну конечно если читать книги, а не смотреть видосики.
тогда только одна таблица и никаких перемещений, + выборки к данной таблице показывающие необходимую информацию
PHP: function get_table($table_name){ global $link; $sql = "SELECT * FROM `$table_name` ORDER BY `priority`,`date`"; $result = mysqli_query($link, $sql); $server = mysqli_fetch_all($result, MYSQLI_ASSOC); return create_table($server); } function create_table($server ){ $result = ""; foreach($server as $serv){ $result .= '<div class="server_section">' .'<a href="'.$serv['link_server'].'" rel="nofollow" target="_blank" class="server_link '.$serv['status'].'">' .'<div class="icon_name">' .'<span class="icon">'.$serv['fa fa'].'></span>' .'<span class="name">'.$serv['name_server'].'</span>' .'</div>' .'<div class="reit_date">' .'<span class="reit">.'$serv['rate_server'].'</span>' .'<span class="chronicl">'.$serv['chronicl_server'].'</span>' .'<span class="date">'.$serv['date_server'].'</span>' .'</div>' .'</a>' .'</div>'; } return $result; } $server_name = get_table(server_name); $today_open = get_table(today_open); $vip_open_left = get_table(vip_open_left); $server_right_name = get_table(server_right_name); $right_yesterday = get_table(right_yesterday); --- Добавлено --- И вставляй в свой html: HTML: <?php require '/app/header.php'; ?> <div class="container"> <div class="server_list_soon"> <div class="box__select"> <div class="h_name h_first"> <h1>Список серверов ожидающих открытие :</h1> </div> <?=$server_name?> </div> <div class="box__select"> <div class="h_name"> <h2>Сегодня откроются :</h2> </div> <?=$today_open?> </div> <div class="box__select"> <div class="h_name"> <h3>На этой неделе и позже :</h3> </div> <?=$vip_open_left?> </div> </div> <div class="server_lest_already"> <div class="box__select"> <div class="h_name h_first"> <h1>Список уже открывшихся серверов :</h1> </div> <?=$server_right_name?> </div> <div class="box__select"> <div class="h_name"> <h1>Вчера открылись :</h1> </div> <?=$right_yesterday?> </div> <div class="box__select"> <div class="h_name"> <h1>Открывщиеся сервера :</h1> </div> <?=$vip_open_right?> </div> </div> </div> <?php require '/app/footer.php'; ?> --- Добавлено --- А во вашему вопросу нужна одна таблица =)
@Artur_hopf, тебя бы на полгодика в режим ридонли... причём не форума, а книг. Ты иногда такую ахинню советуешь, что даже не хочется ничего писать и объяснять.
И потом просто все тяните и раскидываете по 6 таблицам PHP: function get_table($table_name){ global $link; $sql = "SELECT * FROM `$table_name` ORDER BY `priority`,`date`"; $result = mysqli_query($link, $sql); $server = mysqli_fetch_all($result, MYSQLI_ASSOC); foreach($server as $serv){ if($serv['data'] ){ //вставляем в одну таблицу }else if( $serv['data'] ){ //вставляем в другую таблицу } } } --- Добавлено --- @Valick я тоже только учусь, и на этом форуме я поэтому и сижу. Смотрю как лучше, указывай на ошибки если не лень. Знающие люди не особо стараются помогать я заметил. В основном ответы: почитайте книги, или в лучшем случае ссылку на функцию. --- Добавлено --- @Valick И да, в наше время нет времени по полгодика читать, нужно говнокодить и говнокодить много чтоб познать дзэн. Если будешь меня поправлять, писать где не правильно, это будет то для чего этот форум и создавался. Мое такое вот мнение=)
@Artur_hopf, так ты прочитай для начала и увидишь как знающие люди, у которых тупо нет времени перепечатывать базовые знания из книг на форум, к тебе потянутся Я кстати ничего не имею против тебя. Пусть партизанскими тропа зами да огородами, ты худо бедно идёшь к поставленной цели. Просто чаще всего отвечая на вопросы форумчан (за что тебе отдельная "пятёрка по труду", ты вместо того, чтобы сделать шаг назад и оценить саму постановку задачи, бросаешься как питбуль и летят клочки по закоулочкам. Жаль только не понимаешь сколько времени теряешь впустую. Книгу в 1000 страниц прочитать при желании можно за неделю. Потом уже говнокодь если сможешь
--- Добавлено --- я еще раз повторюсь)) у меня нет задачи, вставить в таблицу с помощью php) только манипуляция со строками в таблицах) к сожалению не возможно сократить таблицы до 1 и разбить строки уже в html) Таблицы трогать не зачем меня очень устраивает это все) просто проверить строки по полю "date" в mysql которая с помощью пикера) я даже чтоб не париться сделал поле date и отдельно варчант и спокойно дублюрую дату в том формате в котором мне душе угодно, простой записью. все поля заполняю я в ручную, без формы и их крайне мало так что не напряжно) я наверное не понял ваш замысел, извините, вы старались и помогали мне а я как не благодарный получаюсь)
@GlebSharapov ну вот смотри ты тянешь таблицу, потом проверяешься каждую строчку через foreach на сегодняшнюю(или какую там тебе надо дату), потом в зависимости какая там дата раскидываешь данные по таблицам, например: PHP: foreach($server as $serv){ if(date('Y-d-m H:i:s', strtotime($serv['data'])) >= date('Y-d-m H:i:s'){ //отправляем эти данные в таблицу номер четыре. }else if (){ //любое условие на дату //отправляем эту данные в другую таблицу } --- Добавлено --- @Valick не судите меня, а лучше просто исправляйте мои косяки, я помогаю только в свободное время. Заметь у меня нет ни одного сообщения во вкладках Php для профи, я только пишу там где не страшно высказываться =)
я не могу понять в чем причина)) если я даже удалю половина кода) то не выдаёт ошибки, как и целый код не выдаёт результатов)
как только меняю на свой) так всё работает и отображается))) извините) --- Добавлено --- да щас посплю)) 1 ошибочку я нашёл уже)) разберюсь, видимо что то не так делаю) Спасибо)
уже продвижение)) но что бы я не делал отображаются в разметке данные только из одной таблицы $server_name и все) остальные игнорируются) --- Добавлено --- Warning: mysqli_fetch_all() expects parameter 1 to be mysqli_result, boolean given in W:\domains\newphp\sys\core\get_server.php on line 11 Warning: Invalid argument supplied for foreach() in W:\domains\newphp\sys\core\get_server.php on line 19 Warning: mysqli_fetch_all() expects parameter 1 to be mysqli_result, boolean given in W:\domains\newphp\sys\core\get_server.php on line 11 Warning: Invalid argument supplied for foreach() in W:\domains\newphp\sys\core\get_server.php on line 19 Warning: mysqli_fetch_all() expects parameter 1 to be mysqli_result, boolean given in W:\domains\newphp\sys\core\get_server.php on line 11 Warning: Invalid argument supplied for foreach() in W:\domains\newphp\sys\core\get_server.php on line 19 Warning: mysqli_fetch_all() expects parameter 1 to be mysqli_result, boolean given in W:\domains\newphp\sys\core\get_server.php on line 11 Warning: Invalid argument supplied for foreach() in W:\domains\newphp\sys\core\get_server.php on line 19 а нет)) поболее)) --- Добавлено --- всё я спаюшки попытаюсь поправить))