Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Активные темы » MySql/PHP: общие вопросы

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

Открыть новую тему     Написать ответ в эту тему

Ghosting4469



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вы правы проблема в модели.  

Код:
 
<?php
 
namespace app\models;
use yii\db\ActiveRecord;
 
class AddFormComment extends ActiveRecord{
    public static function tableName(){
        return 'comments';
    }
}  
 

При использовании библиотеки ActiveRecord не пишутся переменные полей.
        public $name;
        public $comment;
        public $id_stick;
Переменные полей пишутся только при использовании библиотеки Model.
Сейчас все работает спасибо.

Всего записей: 55 | Зарегистр. 21-03-2017 | Отправлено: 10:43 13-03-2019
fararara

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У меня 10 сайтов на Вордпресс. Шаблоны разные. Статьи добавляются равномерно, размеры статей примерно одинаковые. При этом у одних сайтов базы данных растут медленно, а у других очень быстро. На днях создал новый сайт, подобрал самый простой шаблон, начал добавлять статьи и поначалу обрадовался: 7 статей выдали 2МБ базы данных. Спустя неделю добавил восьмую статью и база данных сразу подскочила до 10МБ.  
 
В чем может быть причина? Сразу скажу, что на старых сайтах пробовал чистить БД с помощью средств MyAdmin и с помощью плагинов. На размер БД это никак не повлияло.

Всего записей: 243 | Зарегистр. 19-03-2010 | Отправлено: 14:46 03-05-2019 | Исправлено: fararara, 15:25 03-05-2019
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
fararara
есть же по WP тема.

Цитата:
В чем может быть причина?

статьи правим? ревизии тоже сохраняются. плюс там могут быть и логи посещение и еще куча чего другого.

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 21:12 03-05-2019
fararara

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
 
С одной стороны по вордпресс, а с другой по SQL.
Ладно, перенесу в вордпресс

Всего записей: 243 | Зарегистр. 19-03-2010 | Отправлено: 23:24 03-05-2019
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
как рассчитать разницу между полями birthday и start в php ?
 
поле birthday тип (даты 0000-00-00)
 
поле start тип (год 0000)
 
пример:
 
birthday 1992-06-03
 
start 2018
 
результат 26
 

 
 

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 18:48 21-07-2019
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback
При чем тут тип поля и php? Может проще сразу в MySQL считать?
Если же чисто в php - вырезайте первые 4 символа, получите год.
Можно разбить строку по - и первый элемент
Можно использовать функцию паркинга временной метки и потом получить год из первой записи. Но вырезание первых 4 символов самый быстрый и простой способ.

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 19:30 21-07-2019
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
 
это база данных кино
день рождения и начало в таблице актера
Я должен рассчитать разницу между днем рождения и началом
когда актер начал действовать
 
может быть, нужна функция,
но я не могу это построить

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 19:40 21-07-2019
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback

Цитата:
Я должен рассчитать разницу между днем рождения и началом  

в какой момент? при запросе в базу (то есть MySQL запросом) или после, при обработке данных (с помощью PHP)?
для php я уже написал что делать.
$year = substr($var_с_датой, 0, 4);
http://sandbox.onlinephpfunctions.com/code/38c723faca58b2ba417e2577ef1f92bdc76f0550

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 22:34 21-07-2019
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
помощью PHP
 
нужно рассчитать разницу между днем рождения и началом
 
<?php
$var1 = ['birthday'];
$var2 = ['start'];
echo $var2 - substr($var1, 0, 4);
?>
 
 
пример:
 
birthday ['birthday'] <------------------1992-06-03
 
start ['start']   <---------------           2018
 
результат 26

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 22:45 21-07-2019
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback

Цитата:
нужно рассчитать разницу между днем рождения и началом  

ну, и чем вас не устраивает приведенный по ссылке код??

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 22:46 21-07-2019
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

 
генерирует ошибку
 
Warning: substr() expects parameter 1 to be string, array given in W:\domains\localhost\Cinema\cinema.php on line 198
 
Fatal error: Unsupported operand types in W:\domains\localhost\Cinema\cinema.php on line 198
 
line 198
echo $var2 - substr($var1, 0, 4);

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 22:51 21-07-2019
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback

Цитата:
expects parameter 1 to be string, array given  

$var1 является массивом, а не строкой. я же не знаю в чем и как вы храните свои данные.
подставляете именно ту переменную, в которой записано нужное вам значение, а не  

Цитата:
['start'] и ['birthday'];

если данные в $var в виде массива, то, скорее всего, $var1 = $var['birthday']; а $var2 = $var['start'];

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 22:53 21-07-2019
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
моя ошибка, я забыл переменную $row
 
<?php
$var1 = $row['birthday'];
$var2 = $row ['start'];
 
?>
<?php echo $var2 - substr($var1, 0, 4); ?>
 
сейчас работает Mavrikii
 
большое спасибо  

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 22:59 21-07-2019
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback
можно не заводить отдельные переменные, а сразу
echo $row['start'] - substr($row['birthday'], 0, 4);

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 23:00 21-07-2019
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
это работает, это важно,
Можете ли вы объяснить мне этот кусок кода?
 

Код:
substr($var1, 0, 4)

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 23:10 21-07-2019
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback

Цитата:
Можете ли вы объяснить мне этот кусок кода?  

https://php.ru/manual/function.substr.html

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 23:11 21-07-2019 | Исправлено: Mavrikii, 23:13 21-07-2019
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
спасибо, очень полезно
Желаю тебе хорошего вечера

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 23:14 21-07-2019
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

привет,
У меня есть эта функция для преобразования минут в часы,
он работает,
но я хочу, чтобы, когда отображаются только минуты
« 0 Hours» текст не виден
только Minutes
 
 

Код:
<?php  
 
// function to convert minutes into hours and minutes for a jobsheet.
function convertFromMinutes($job_duration)
{
    $hours = (int)($job_duration / 60);
    $minutes = $job_duration - ($hours * 60);
    return array('hours' => $hours, 'minutes' => $minutes);
}
 
$job_duration = $row['minutes'];
$job_duration = convertFromMinutes($job_duration);
//echo "Job duration = " . $job_duration['hours'] . " Hours "
  //  . $job_duration['minutes'] . " Minutes ";
    
?>    

 

Код:
<?php echo  $job_duration['hours'] . " Hours "
    . $job_duration['minutes'] . " Minutes ";?>

 
 
пример:
 
0 Hours 46 Minutes

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 09:34 22-07-2019
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zagorisback
давай вы, сначала, посмотрите учебник по языку? потому что то, что вы спрашиваете, это элементарные основы любого языка - использование if .. else .. конструкций.
 

Код:
echo  ($job_duration['hours'] > 0 ? $job_duration['hours'] . " Hours " : "") . $job_duration['minutes'] . " Minutes ";

Всего записей: 15099 | Зарегистр. 20-09-2014 | Отправлено: 20:13 22-07-2019 | Исправлено: Mavrikii, 20:13 22-07-2019
zagorisback



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
привет Mavrikii,
извините, но я начинаю изучать php сейчас,
Я не программист, просто страсть к учебе,
 
а если Hours и Minutes равны 0?
 
Я также попытался адаптировать минуты,
я получаю ошибку
 
пример:
 
0 Hours 0 Minutes

Всего записей: 623 | Зарегистр. 05-05-2014 | Отправлено: 20:32 22-07-2019
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

Компьютерный форум Ru.Board » Интернет » Web-программирование » Активные темы » MySql/PHP: общие вопросы


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru