Задать вопрос
  • Как добавить в ячейку несколько id?

    @pevxiw Автор вопроса
    Lander, да это легко но можно ли в ячейку добавить несколько id чтобы базу не нагружать
  • Как добавить в ячейку несколько id?

    @pevxiw Автор вопроса
    вообще не понял =D прошу прощения
    мне бы пример
  • Как при добавлении картинки уменьшить её?

    @pevxiw Автор вопроса
    Александр Лыкасов,
    <?php
      // ограничение размера файла
      $limit_size = 1*1024*1024; // 1 Mb
      // корректные форматы файлов
      $valid_format = array("jpeg", "jpg", "gif", "png");
      // путь до нового файла
      $path_file = "resource/img/avatars/";
      // имя нового файла
      $rand_name = md5(time() . mt_rand(0, 9999));
    
      if($_FILES){
        if($_FILES["avatar"]["size"] > $limit_size){
          echo  'Убедитесь что картинка не больше 1мб.';
        }else{
          $format = end(explode(".", $_FILES["avatar"]["name"]));
          if(!in_array($format, $valid_format)){
            echo 'Убедитесь что картинка формата (png,jpg,jpeg,png)';
          }else{
            if(is_uploaded_file($_FILES["avatar"]["tmp_name"])){
              echo 'Теперь у вас новый аватар.';
    $src_path = $_FILES["avatar"]["tmp_name"];
    $dest_path = $path_file . $rand_name . ".$format";
    $type = exif_imagetype($src_path);
    switch ($type) {
      case IMAGETYPE_JPEG:
        $src_img = imagecreatefromjpeg($src_path);
        break;
      case IMAGETYPE_PNG:
        $src_img = imagecreatefrompng($src_path);
        break;
      case IMAGETYPE_GIF:
        $src_img = imagecreatefromgif($src_path);
        break;
      case IMAGETYPE_BMP:
        $src_img = imagecreatefrombmp($src_path);
        break;
      default:
        // ???
        // throw new \Exception("Unknown image type $type of file '$src_path'", 1);
        break;
    }
    $dest_img = imagescale($src_img, 200, 200, -1, IMG_BICUBIC_FIXED);
    if (!imagejpeg($dest_img, $dest_path, 85)) {
      // ???
      // throw new \Exception("Can't save JPEG image '$dest_path'", 1);
    }
    // освобождаем память
    imagedestroy($src_img);
    imagedestroy($dest_img);
              mysqli_query($link,"UPDATE `users` SET `avatar`= '/$path_file$rand_name.$format' WHERE id=$server");
            }else{
              echo '<div class="inform"><div class="alert alert-danger alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button><strong>Ошибка!</strong> Ошибка загрузки.</div></div>';
            }
          }
        }
      }
    ?>
  • Как при добавлении картинки уменьшить её?

    @pevxiw Автор вопроса
    Александр Лыкасов, выводит ошибки
    Warning: imagescale() expects at most 4 parameters, 5 given in D:\OpenServer\OSPanel\domains\mservstest.ru\page\user-menu\profile.php on line 356
    
    Warning: imagejpeg() expects parameter 1 to be resource, null given in D:\OpenServer\OSPanel\domains\mservstest.ru\page\user-menu\profile.php on line 358
    
    Warning: imagedestroy() expects parameter 1 to be resource, null given in D:\OpenServer\OSPanel\domains\mservstest.ru\page\user-menu\profile.php on line 364


    и картинка не добавляется
  • Как при добавлении картинки уменьшить её?

    @pevxiw Автор вопроса
    чёт не догнал куда вставлять можете помочь ?
  • Как при загрузки файла на сервер сделать UTF8?

    @pevxiw Автор вопроса
    О спасибо про md5 помогло кому интересно вот код
    <?php
      // ограничение размера файла
      $limit_size = 1*1024*1024; // 1 Mb
      // корректные форматы файлов
      $valid_format = array("jpeg", "jpg", "gif", "png");
      // путь до нового файла
      $path_file = "resource/img/avatars/";
      // имя нового файла
      $rand_name = md5(time() . mt_rand(0, 9999));
    
      if($_FILES){
        if($_FILES["avatar"]["size"] > $limit_size){
          echo  '<div class="inform"><div class="alert alert-danger alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button><strong>Ошибка!</strong> Убедитесь что картинка не больше 1мб.</div></div>';
        }else{
          $format = end(explode(".", $_FILES["avatar"]["name"]));
          if(!in_array($format, $valid_format)){
            echo '<div class="inform"><div class="alert alert-danger alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button><strong>Ошибка!</strong> Убедитесь что картинка формата (png,jpg,jpeg,png).</div></div>';
          }else{
            if(is_uploaded_file($_FILES["avatar"]["tmp_name"])){
              echo '<div class="inform"><div class="alert alert-success alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button><strong>Супер!</strong> Теперь у вас новый аватар.</div></div>';
              move_uploaded_file($_FILES["avatar"]["tmp_name"], $path_file . $rand_name . ".$format");
              mysqli_query($link,"UPDATE `users` SET `avatar`= '/$path_file$rand_name.$format' WHERE id=$server");
            }else{
              echo '<div class="inform"><div class="alert alert-danger alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button><strong>Ошибка!</strong> Ошибка загрузки.</div></div>';
            }
          }
        }
      }
    ?>

    <form action="" method="POST" enctype="multipart/form-data">
      <input type="file" name="avatar"><br> 
      <input type="submit" value="Загрузить"><br>
    </form>
  • Как при загрузки файла на сервер сделать UTF8?

    @pevxiw Автор вопроса
    у меня и так стоит
    даже когдаровка подключена в файле где идёт пдключение к бд
    mysqli_query($link, "SET NAMES 'utf8'");
  • Как при загрузки файла на сервер сделать UTF8?

    @pevxiw Автор вопроса
    Pavel Karinin, да я собственно хз как сохранять сделал по фасту
    недавно начал изучать php все эти запросы

    Если черту "/" поставить в $dir = ...
    то картинка не сохраниться как бы
  • Как сделать переписку как в вк, discord, fasebook?

    @pevxiw Автор вопроса
    twobomb, о спасибо но это не работает если использовать два чата крч просто сделал при удалении
    $("#" + id).remove();
    но у другого пользователя не обновляется если только он страницу не обновит
    крч и так отлично меньше нагрузки
  • Как сделать переписку как в вк, discord, fasebook?

    @pevxiw Автор вопроса
    даже если в бд удалить сообщение то оно пропадёт только если обновить страницу.
    и когда удаляешь сообщение а потом пишешь новое оно остаётся на месте пожалуйста помогите
  • Как сделать переписку как в вк, discord, fasebook?

    @pevxiw Автор вопроса
    А как сделать так чтобы когда я удалял сообщение обновлялось собственно я с делал удаление но не обновляется только если страницу обновить
    <script>
        //Получаем timestamp последнего сообщения, если нету сообщений то 0 чтобы получить все
        function getTimeStamp(){
            if($(".msgblock").length == 0)
                return 0;
            var $msgs = $(".msgblock");
            return $($msgs[$msgs.length-1]).data("timestamp");
        }
        $(document).ready(function(){
            //Добавляем сообщение
            $("#send2").submit(function(event){
                event.preventDefault();
                $.ajax({
                    url: "/m-/send",
                    type: "POST",
                    data: $("#send2").serialize(),
                    success: function(answer){
                        $("#answer").html(answer);
                        $('.text-smile').val('');
                    }
                });
            });
            //Таймер на запрос новых сообщений каждую секунду
                (function updateData(){
                    getMsgAfterTime(function(){
                        setTimeout(updateData,700);
                        document.getElementById('result2').scrollTop = 9999;
                    });     
                })();   
    
        });
        //Получение новых сообщение и добавление
        function getMsgAfterTime(callback){
            var id = <?=$server?>;
             $.ajax({
                method: "POST",
                url: "/m-/test",
                data: {'id': id, timestamp: getTimeStamp()}
              })
                .done(function( newValue ) {
                  if(newValue != "")
                    $("#msgs").append($(newValue));
                    if(typeof(callback) == "function")
                        callback();
                //удалить сообщение
                    $('.unlike').click(function(){
                        var id = $(this).attr('id');
                        this.disabled='true';
                        $.ajax({
                            url: '/m-/delete',
                            type: 'post',
                            async: false,
                            data:{
                            'unliked': 1,
                            'id': id
                            }, success:function(answer){
                                $("#answer").html(answer);
                                $("#msgs").reload($(newValue));
                                document.getElementById('result2').scrollTop = 9999;
                            }
                        });
                    });
                    
                
        });
        }
    </script>
  • Как сделать переписку как в вк, discord, fasebook?

    @pevxiw Автор вопроса
    twobomb, так зачем это делать если любой другой может написать сообщение и так 100человек то получается будет обновлятся много раз
  • Как сделать переписку как в вк, discord, fasebook?

    @pevxiw Автор вопроса
    twobomb, нет show это функция и в этой функции ajax подключение к другому файлу php крч выводит сообщения в div

    Просто нужно вывести сообщения в реальном времени из базы данных.
    Как у меня в видео только чтобы не мигало. Просто интервал это тупо обновление другой страницы.
    Вот я сейчас пишу сообщение оно добавляется в бд и сразу выводится тут и не нужно обновлять страницу и также все кнопки работают без мигания.
  • Как сделать переписку как в вк, discord, fasebook?

    @pevxiw Автор вопроса
    Хомон, не могли бы вы скинуть ссылку чтобы был пример как это реализовать. А то опять искать уйму времени
    Только чтобы с бд(mysqli, mysql) было

    Я читал про node.js там порты какие-то крч не понятно

    Мне не нужен чат мне нужно сделать нормальные личные сообщения