Ответы пользователя по тегу PHP
  • Как реализовать идею аукциона?

    frost18
    @frost18
    Программист PHP
    Самому написать, изучайте фреймворки. Могу посоветовать Yii, Symfony, laravel
    Ответ написан
    Комментировать
  • Как считывать данные с удалённого сервера?

    frost18
    @frost18
    Программист PHP
    Запускайте скрипты планировщиком задач Cron
    Ответ написан
    Комментировать
  • Можно ли учить js и параллельно php?

    frost18
    @frost18
    Программист PHP
    Обязательно нужно. В синтаксисе не запутаетесь, он значительно отличается, и понимание происходящего будет лучше. К примеру я начал использовать фреймворк jQuery еще до того как выучил js, не скажу что это правильно, но я сразу увидел результат своей работы, что мотивировало меня очень сильно, и остановиться было не возможно =)
    Ответ написан
    Комментировать
  • Как сделать графическую загрузку изображений?

    frost18
    @frost18
    Программист PHP
    1) Делаете верстку этих превьющек
    <div class="attach">Загрузить</div>
    2) Пишете скрипт который бы при клике открывал окно выбора файла, а после выбора отправлял файл на сервер.
    (function($){$(function(){
    
        var attach = function(opt){
    
            var self = this;
    
            var _opt = {
                'url' : '/attach/'
            };
    
            var data;
    
            this.init = function(){
    
                opt = $.extend({}, _opt, opt);
    
                self.open();
    
                self.change();
            };
    
            this.open = function(){
    
                $(document).on('click', '.attach', function(e){
    
                    e.preventDefault();
    
                    var $node = $(e.target);
    
                    data = $node.data('data');
    
                    var $attach_file = $node.siblings('.attach_file');
    
                    if(!$attach_file.length){
    
                        var accept = '';
    
                        if(data !== undefined && data.accept !== undefined){
    
                            accept = ' accept="'+data.accept+'"';
                        }
    
                        $attach_file = $('<input type="file" class="attach_file"'+accept+'>').hide();
    
                        $node.after($attach_file);
                    }
    
                    $attach_file.click();
                });
            };
    
            this.change = function(){
    
                $(document).on('change', '.attach_file', function(e){
    
                    var $node = $(e.target);
    
                    var form = new FormData();
    
                    form.append('attach', $node.get(0).files[0]);
    
                    self.start_load();
    
                    $node.prop('disabled', true);
    
                    $.ajax({
                        url: opt.url,
                        data: form,
                        processData: false,
                        contentType: false,
                        type: 'POST',
                        success: function(response){
    
                            self.stop_load();
    
                            $node.prop('disabled', false);
    
                            self.response(response);
                        }
                    });
                });
            };
    
            this.response = function(data){
                //TODO:: Обработка ответа
            };
    
            this.start_load = function(){
                //TODO::Начало загрузки
            };
    
            this.stop_load = function(){
                //TODO::Окончание загрузки
            };
        };
    
        new attach().init();
    
    });})(jQuery);

    3) На стороне сервера принимаете файл. Я бы оригинал сохранил во временную папку "tmp/myphoto.jpeg", и создал бы еще одно уменьшенное для превьюшки "tmp/small_myphoto.jpeg". Кстати лучше получить уникальное имя файла на PHP к примеру можно сделать так
    $filename=md5(microtime(TRUE).mt_rand(0, 99999).'myphoto.jpeg');

    4) В ответ отправляете название вновь созданного файла
    5) В методе "response" в моем примере, вставляете превьюшку в DOM, так же можете вставить поле "hidden", в значение которого вставите имя файла.
    6) После отправки всей формы на стороне сервера пишете код который переносит файлы в постоянное место размещения и сохраняете данные в базу.
    Ответ написан
    Комментировать
  • Можно ли в теле массива использовать условия для добавления элементов?

    frost18
    @frost18 Автор вопроса
    Программист PHP
    Пример из жизни, используя Yii, добавляю ссылку
    <?=CHtml::link('Удалить', '/files/123.jpg', ['class' => 'link', 'data-id' => 86])?>


    Для того что бы добавить новый атрибут по условию мне нужно сделать так:
    <?$htmlOptions = ['class' => 'link', 'data-id' => 86]?>
    
    <?if($x === TRUE){
        $htmlOptions['data-module'] = 'file';
    }?>
    
    <?=CHtml::link('Удалить', '/files/123.jpg', $htmlOptions)?>


    Но я считаю что не отвратительно было бы если бы я мог записать это так:
    <?=CHtml::link('Удалить', '/files/123.jpg', ['class' => 'link', 'data-id' => 86, ($x === TRUE ? 'data-module' => 'file')])?>
    Ответ написан
  • Как загрузить изображения в БД в Modal Bootstrap 3.2 с помощью AJAX?

    frost18
    @frost18
    Программист PHP
    Я отправляю формы ajax'ом с помощью плагина jQuery Form, он и файлы отправляет тоже. А на стороне сервера обрабатывайте как обычно.
    Ответ написан
    Комментировать
  • Как с помощью класса phpmailer указать email адрес кириллицей?

    frost18
    @frost18 Автор вопроса
    Программист PHP
    Я думал это как то проще будет. Про пуникод я читал. Нашел класс "Net_IDNA" который переводит его, только я думал это как то проще будет, не уже ли рассыльщики писем этого не делают сами(
    Ответ написан
    Комментировать
  • Как мне преобразовать строку в число?

    frost18
    @frost18 Автор вопроса
    Программист PHP
    $price = (int)preg_replace('/[^0-9]/','',$price);
    получилось, спасибо
    Ответ написан
    Комментировать