<?php $form = ActiveForm::begin([
'fieldConfig' => [
'options' => [
'tag' => false,
]
]
]); ?>
'http://yii2.loc/web/css/bootstrap-reboot.css'
'css/bootstrap-reboot.css'
public function actionLogin() {
return $this->render("landing");
// ......
return $this->render('landing', [
'model' => $model,
]);
}
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName localhost
DocumentRoot /home/slonik/localhost/www
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /home/slonik/localhost/www/>
Options +Indexes +FollowSymLinks -MultiViews
AllowOverride All
Order allow,deny
allow from all
Require all granted
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /home/slonik/localhost/error.log
#AccessLog /home/slonik/localhost/access.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
echo FileInput::widget([
'name' => 'attachment_' . $id,
'options' => [
'multiple' => true
],
'pluginOptions' => [
'minFileCount' => 1,
'required' => true,
'deleteUrl' => Url::to(['ajax-cars/del-img-moderator']),
'initialPreview' => $initialPreview,
'initialPreviewConfig' => $caption,
'initialPreviewAsData' => true,
'showCaption' => false,
'showBrowse' => false,
'showRemove' => false,
'showUpload' => false,
'initialCaption' => "The Moon and the Earth",
'overwriteInitial' => false,
'fileActionSettings' => [
'showDrag' => false,
'showZoom' => false
]
]
])
'initialPreview' => $initialPreview,
'initialPreviewConfig' => $caption,
$initialPreview = [];
$caption = [];
foreach ($images as $image) {
$initialPreview[] = Url::toRoute($image->path . DIRECTORY_SEPARATOR . 'mini' . DIRECTORY_SEPARATOR . $image->title, true);
$caption[] = [
'key' => $image->id,
'extra' => [
'img' => [
'big' => $image->path . DIRECTORY_SEPARATOR . $image->title,
'small' => $image->path . DIRECTORY_SEPARATOR . 'mini' . DIRECTORY_SEPARATOR . $image->title
]
]
];
}
$this->registerJs('
var input = $("#uploadsfiles-imagesfile");
$("#uploadsfiles-imagesfile").on("filebatchselected", function(){
input.fileinput("upload")
})
var OtherActionButtons = "<button class=\"set-main btn btn-sm btn-kv btn-default btn-outline-secondary\" type=\"button\" {dataKey} title=\"Main photo\">";
OtherActionButtons += "<i class=\"fa fa-star\"></i>";
OtherActionButtons += "</button>";
OtherActionButtons += "<button class=\"set-main btn btn-sm btn-kv btn-default btn-outline-secondary\" type=\"button\" {dataKey} title=\"Left\">";
OtherActionButtons += "<i class=\"fa fa-undo\"></i>";
OtherActionButtons += "</button>";
OtherActionButtons += "<button class=\"set-main btn btn-sm btn-kv btn-default btn-outline-secondary\" type=\"button\" {dataKey} title=\"Right\">";
OtherActionButtons += "<i class=\"fa fa-repeat\"></i>";
OtherActionButtons += "</button>";
/* $(".btn-submit").on("click", function(){
var Text = $(".file-caption-name").val();
input.fileinput("upload");
if(Text == ""){
return false;
}
}) */
var funCi = $("#uploadsfiles-imagesfile").on("fileuploaded", function(event, data, previewId, index) {
input.fileinput("destroy").fileinput({
maxFileCount: 2,
validateInitialCount: true,
overwriteInitial: false,
required: true,
multiple: true,
/*showUpload: false,
showRemove: false,*/
initialPreviewAsData: true,
initialPreview: data.response.initialPreview,
initialPreviewConfig: data.response.initialPreviewData,
otherActionButtons: OtherActionButtons,
uploadUrl: "' . Url::to(['upload-img']) . '",
deleteUrl: "' . Url::to(['delete-img']) . '",
})
// setTimeout(function(){funCi}, 2500)
input.closest("form").find("button").attr("disabled", false)
console.log(data);
});
', View::POS_END);
sudo dpkg -i libidn2-0_2.0.4-1.1build2_amd64.deb && sudo apt-mark hold libidn2-0
или стоит выучить ООП и только потом посмотреть данный плейлист?
//значение data в базе данных 1566668242
// если значение data в базе 2019-09-02 10:18:00 - strtotime($result['data'])
$sql("SELECT id,avatar,login,rey,message,komy,data FROM `messages2`WHERE `komy`='$a'");
$row = $mysqli->query($sql);
setlocale(LC_ALL, 'ru_RU.UTF-8');
while($result = $row->fetch_assoc()){
echo strftime('%a %e %B %G %H:%M:%S', $result['data']) . '<br>';
}
$filesize = 1;
$fio = 'Василий Евграфович Защёлкин';
if ($filesize == 1) { // проверка на общий размер всех файлов. Многие почтовые сервисы не принимают вложения больше 10 МБ
if(mail($to, $subject, $message, $headers)){
// echo $_POST['fio'].', Ваше сообщение получено, спасибо!';
?>
<script type="text/javascript">
var message = "<?= $fio ?>" + ', Ваше сообщение получено, спасибо!';
alert(message)
</script>
<?php
}
else{
?>
<script type="text/javascript">
var message = "<?= $fio ?>" + ', Ваше сообщение НЕ отправлено, обратитесь к администратору!';
alert(message)
</script>
<?php
}
} else {
//echo 'Извините, письмо не отправлено. Размер всех файлов превышает 10 МБ.';
?>
<script type="text/javascript">
var message = 'Извините, письмо не отправлено. Размер всех файлов превышает 10 МБ.';
alert(message)
</script>
<?php
}
?>
if($filesize < 1024 * 1024 * 10){
// code
}
'rules' => [
// если main у Вас контролер, а search действие
'' => 'main/index',
'<_a:(search)>/<request:\w+>' => 'main/search'
]
if ( !this.checkValidity() ){
alert('Пожалуйста, заполните обязательные поля.');
}
else {
}
enctype="multipart/form-data"
используйте тогда, когда собираетесь отправлять файлы.success: function (data) {
window.location.href = "../спасибо-за-заказ.htm";
},
if ( !this.checkValidity() ){
alert('Пожалуйста, заполните обязательные поля.');
}
$(document).ready(function() {
// Добавляем маску для поля с номера телефона
$('.phonemasked').each(function(){
$(this).mask('+7 (999) 999-99-99');
});
$(".tel-form").on('submit', function(e) {
e.preventDefault();
$.ajax({
type: "POST",
url: "/form/tel_mail.php",
data: $( this ).serialize(),
success: function (data) {
window.location.href = "../спасибо-за-заказ.htm";
},
});
// очищаем поля
$('#form-tel').val('');
});
});
$query = Profile::find()
/* получаем все поля из таблицы профиля и считаем записи в таблице полисов */
->select(['{{%profile}}.*', 'count' => 'COUNT({{%policy}}.id)'])
/* подгружаем "не жадно" необходимые данные через связь getPolicy() */
->joinWith('policy', false)
/* группируем записи по id профиля */
->groupBy('{{%profile}}.id')
/* сортируем по количеству проданных полисов в порядке убывания */
->orderBy(['count' => SORT_DESC]);
$dataProvider = new ActiveDataProvider([
'query' => $query
]);
$files = scandir($dir.'/some-dir0');
foreach($files as $fileNames){
if($fileNames == '.' || $fileNames == '..') continue;
if(is_file('some-dir0/' . $fileNames)){
$fileVals[] = $fileNames;
}
}
echo '<br/>';
print_r($fileVals);