Please, hepl. Already 4 days struggling over the issue, does not want to run the progress bar. That's what I do:
Through FormIt do form:
<link rel="stylesheet" href="[[*st_url]]/css/jqueryui-lightness/jquery-ui.css" />
<script src="[[*st_url]]/js/jquery-ui.min.js"></script>
<script src="[[*st_url]]/js/jquery.blockUI.js"></script>
[[!FormIt?
&hooks=`galhp_upload_check,galhp_upload`
&successMessage=`Спасибо! Ваш хэпибук добавлен.`
&validate=`title:required,
category:required,
descr:required:stripTags,
zip:required,
nospam:blank`
]]
<h1>[[*pagetitle]]</h1>
[[!+fi.error_message:notempty=`<script>$(document).ready(function() { $.unblockUI(); });</script><div class="error_mes">[[!+fi.error_message]]</div>`]]
[[!+fi.successMessage:notempty=`<script>$(document).ready(function() { $.unblockUI(); });</script><div class="ok_mes">[[!+fi.successMessage]]</div>`]]
<form id="upload-hbook-form" action="[[~[[*id]]]]" method="POST" class="form" enctype="multipart/form-data">
<input type="hidden" name="nospam:blank" value="" />
<input type="hidden" name="[[!session_progress_get]]" value="uploadfile" />
<input type="hidden" name="uid" value="[[!+modx.user.id]]" />
<div class="form-row">
<span class="form-row-field"><label for="title" class="form-label">Название<span class="form-field-requared">*</span></label></span>
<span class="form-input-field"><input data-required="required" type="text" name="title" id="title" title="Название" value="[[!+fi.title]]" /></span><span class="error">[[!+fi.error.title]]</span>
</div>
<div class="form-row">
<span class="form-row-field"><label for="category" class="form-label">Категория<span class="form-field-requared">*</span></label></span>
<span class="form-input-field">[[!GalleryAlbums? &toPlaceholder=`galleries` &limit=`0` &albumCoverSort=`rank` &prominentOnly=`0` &rowTpl=`galAlbumSelectTpl`]]<select name="category" id="category"><option name="-1"></option>[[+galleries]]</select></span><span class="error">[[!+fi.error.category]]</span>
</div>
<div class="form-row">
<span class="form-row-field"><label for="descr" class="form-label">Описание<span class="form-field-requared">*</span></label></span>
<span class="form-input-field"><textarea name="descr" id="descr" cols="55" rows="7" value="[[!+fi.descr]]">[[!+fi.descr]]</textarea></span><span class="error">[[!+fi.error.descr]]</span>
</div>
<div class="form-row">
<span class="form-row-field"><label for="zip" class="form-label">Архив заказа (zip, rar, 7z)<span class="form-field-requared">*</span></label></span>
<span class="form-input-field"><input data-required="required" type="file" name="zip" id="zip" title="Архив заказа" value="[[!+fi.zip]]" /></span><span class="error">[[!+fi.error.zip]]</span>
</div>
<br class="clr" />
<div class="form-buttons">
<input type="submit" value="Загрузить" />
</div>
</form>
blockUI is a script pop-ups
This my js-code:
var t;
progress = function(){
$.ajax({
url: '/assets/upload_progress.php',
dataType: 'json',
success: function(data){
if(data.percent) {
$("#bar").progressbar({
value: Math.ceil(data.percent),
});
$('.ui-progressbar-value').text(data.percent+'%');
}
}
});
}
$(document).ready(function() {
$('#upload-hbook-form').submit(function() {
$.blockUI({ message: '<h2>Отправляем...</h2><div id="progress"><div id="bar"></div></div>' });
t = setInterval("progress()", 1000);
});
});
And this my upload_progress.php:
session_start();
error_reporting(0);
$percent = 0;
$data = array();
$progress_key = ini_get("session.upload_progress.prefix")."uploadfile";
if(isset($_SESSION[$progress_key]) and is_array($_SESSION[$progress_key])) {
$percent = ($_SESSION[$progress_key]['bytes_processed'] * 100 ) / $_SESSION[$progress_key]['content_length'];
$percent = round($percent,2);
$data = array(
'percent' => $percent,
'content_length' => $_SESSION[$progress_key]['content_length'],
'bytes_processed' => $_SESSION[$progress_key]['bytes_processed']
);
echo json_encode($data);
} else
echo json_encode(array('percent' => 'error_upload'));
And on screen my php.ini session options. what am I doing wrong? $_SESSION[$progress_key] is null

Php version is 5.4.4-1~lucid+1