Задать вопрос
  • Как запустить систему или скопировать хотя бы файлы?

    xotkot
    @xotkot
    хорошо есть и хорошо весьма
    При запуске системы выдаёт ошибки
    [sdb] no caching mode page found
    [sdb] assuming drive cache: write throgh

    Во первых, это не критическая ошибка, у меня шлешка к примеру так ругается в dmesg при подключении и ничего.
    Во вторых, вы пишите что у вас ноут, сколько у него дисков ? так как ошибка касается sdb а не sda. Возможно у вас просто вставлена флешка во время загрузки на которую и ругается система.
    как мне запустить Linux

    мало информации предоставили, сделали хотя бы фотки лога загрузки
    Ответ написан
    5 комментариев
  • Правильно ли я понимаю работу require_once?

    BuriK666
    @BuriK666
    Компьютерный псих
    php.net/manual/ru/function.require-once.php
    Выражение require_once идентично require за исключением того, что PHP проверит, включался ли уже данный файл, и, если да, не будет включать его еще раз.

    php.net/manual/ru/function.require.php
    require идентично include за исключением того, что при ошибке оно также выдаст фатальную ошибку уровня E_COMPILE_ERROR. Другими словами, она остановит выполнение скрипта, тогда как include только выдала бы предупреждение E_WARNING, которое позволило бы скрипту продолжить выполнение.

    php.net/manual/ru/function.include.php
    Выражение include включает и выполняет указанный файл.
    Ответ написан
    Комментировать
  • Как сделать рандом с шансом?

    BuriK666
    @BuriK666
    Компьютерный псих
    $arr = ['test' => 50, 'tost' => 10, 'tost1' => 40]; // сумма должна быть 100
    sort($arr);
    $n = rand(0, 100); // ну или тут использовать array_sum($arr)
    $sum = 0;
    foreach ($arr as $i => $r) {
        $sum += $r;
        if ($sum >= $n) {
            echo $i;
            break;
        }
    }
    Ответ написан
    Комментировать
  • Как сделать рандом с шансом?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    function chance($arr) {
      $total = array_sum($arr);
      $rand = rand(1, $total);
      foreach($arr as $key => $prob) {
        $rand -= $prob;
        if ($rand <= 0) {
          return $key;
        }
      }
    }
    
    print chance(array('test' => 50, 'tost' => 10, 'tost1' => 40));
    Ответ написан
    Комментировать
  • Как сверстать языки пламени?

    Olek1
    @Olek1
    Гифом
    Ответ написан
    Комментировать
  • Как реализовать одну вещь?

    usdglander
    @usdglander
    Yipee-ki-yay
    Рандомно из базы выбирать, думаю, будет лучше.
    SELECT * FROM `table` ORDER BY RAND() LIMIT 1
    Ответ написан
    1 комментарий
  • Правильно ли написан php код?

    @BorisKorobkov Куратор тега PHP
    Web developer
    1. В форме возможна инъекция
    2. $_POST['submit'] не существует
    3. Нет проверки, что существует индекс $_POST['skype'] и пр.
    4. $from не существует, не используется $email
    5. Письмо формируется некошерно (нет разбиения длинного заголовка, недостаточно headers и пр.). Лучше использовать библиотеку
    6. Недостоверный почтовый сервер, подмена обратного адреса и пр. - большая вероятность попадания в спам и блокировки почтовыми серверами
    7. Нет защиты от спама (многоразовой отправки формы ботом)

    И т.д.
    Ответ написан
    6 комментариев
  • Как удалить знак �?

    one_day
    @one_day
    $search = '�'; 
    $replace = '';
    $subject = 'Lor�em ips�um dolor sit a�met, con�sectetur';
    echo str_replace($search, $replace, $subject);
    Ответ написан
    3 комментария
  • Как пересобрать массив?

    zorca
    @zorca
    Ответ написан
    Комментировать
  • Как пересобрать массив?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    Так: $array = array_values($array); ?
    Ответ написан
    Комментировать
  • Как вызвать метод?

    zagayevskiy
    @zagayevskiy Куратор тега Java
    Android developer at Yandex
    Если invoke() обязан быть интерфейсным методом, то видится такое решение:
    1) Интерфейс Invokable должен лежать в том же пакете, откуда он будет вызываться
    2) В этом же пакете нужно создать некий package-private класс (проще всего - enum) с одним-единственным инстансом:
    enum Lock { 
        LOCK;
     }

    3) в метод invoke передавать Lock:
    public static interface Invokable {
      public void invoke(@NonNull Lock lock);
    };

    4) В реализации дополнительно проверять переданный Lock на null
    5) В месте "правильного" вызова передавать: model.invoke(Lock.LOCK);

    Если метод invoke не обязан быть интерфейсным, то просто сделать его package-private и держать реализацию в том же пакете.

    Но мне кажется, что где-то ошибка проектирования. Если изложишь задачу более подробно, можно найти более нормальное решение.
    Ответ написан
  • Это же ошибка в книге Таненбаума?

    Jump
    @Jump Куратор тега Системное администрирование
    Системный администратор со стажем.
    Находил сам ошибки там, не описанные здесь, разве переводчики считают адекватным выпускать такое сырое 6-е издание?

    На такую толстую книгу, такой короткий список ошибок и опечаток? Странно.
    Ищите еще, обычно их больше.
    Ответ написан
    Комментировать
  • NodeJS или PHP 7.1 для прокси?

    @RidgeA
    IMHO nginx+nodejs
    Ответ написан
    Комментировать
  • Как правильно выкинуть 404 exception, если ошибка возникает при кешировании страницы?

    @ssrdop Автор вопроса
    $file = "template.php";
    
    try
    {
        ob_start();
        echo $file . "<br>";
        throw new Exception("asdasd");
        echo "asdasd";
         echo ob_get_clean();
    }
    catch (Exception $e)
    {
        ob_end_clean();
        echo "404";
    }
    Ответ написан
    Комментировать
  • Почему не работает ajax с запросом в бд WHERE?

    0xD34F
    @0xD34F
    Непонятно, откуда мог бы взяться $id. Вы определяете его только в случае isset($_GET['id']), но никакого id у вас в запросе не передаётся.
    Ответ написан
    2 комментария
  • Генерация PDF из HTML шаблона (страницы - в JPG)?

    @sazhyk
    Я пользую JsPDF. Как видно из названия - он на JS. У меня работает вообще без серверной части, всё генерится на стороне клиетна.
    Там довольно большой комбайн. Меня устраивает. На выходе "картинка в пдф", как вам и надо. То есть HTML -> canvas -> JPEG -> PDF.
    Там правда не до конца разобрался с настройкой качества изображения, но мне хватает.
    Ответ написан
    2 комментария
  • Как не выводить первый результат xml, php?

    мне кажется, что так будет немного элегантнее и понятнее))
    $xml = simplexml_load_string(file_get_contents($url));
    foreach($xml->Section->Item as $index => $item){
      if ($index === 0){
        continue;
      }
      echo "<p>$item->Description</p>";
      echo "<p>$item->Image</p>";
    }
    Ответ написан
    4 комментария
  • Зачем разделять сайт(PHP)?

    @BorisKorobkov Куратор тега PHP
    Web developer
    Мухи - отдельно, котлеты - отдельно.
    1. Дизайн сайта (header/footer) - это одно, контент (index) - другое.
    2. Страниц на сайте обычно больше одной. Часто тысячи. Чтобы не дублировать в каждой одно и то же.

    Кстати, делить ли на header и footer - спорный вопрос. По-моему, правильнее сделать один шаблон wrapper и уже внутрь него вставить контент из index.
    Ответ написан
    Комментировать
  • Как увеличить скорость поиска в sphinx?

    @Fortop
    Tech/Team lead
    • Увеличиваем память до 256, а лучше еще больше.
    • Разносим индексы на разные машины ( у Sphinx есть возможность подключать агентов)
    • Даже в рамках одной машины настраиваем количество агентов поиска равное количеству потоков которые может выполнять сервер (например 4хядерный процессор с HyperThreading = 8 потоков
    • Уточняем срок обновления индекса. Кешируем результаты поиска на отдельном сервере в мемкеш/файлы.


    Все эти рецепты можно применять как по-отдельности, так и совместно.
    Конкретные цифры с количеством машин, агентов поиска, объема памяти под индексы и под кеш нужно высчитывать в зависимости от конкретного решения.
    Ответ написан
  • Как генерировать нормальные реки при помощи Perlin noise?

    @Nwton
    Обязательно при помощи шума > Нет, не обязательно

    1) Ставим точку в случайном месте поля. Это будет исток реки;
    2) Теперь немного протянем реку. Для этого задействуем 2 параметра: длинна и направление. Определяем их случайным образом и по соответствующим блокам/точкам прокладываем прямую/кривую.
    3) Далее мы можем создать разветвление реки, тупик, а можем повторить второй шаг. Определяем случайным образом.
    4) Когда из-за множества разветвлений у нас несколько притоков, то перед повторением 3го шага, определяем случайным образом к концу какого из них мы его будем применять.
    5) По ходу реализации поймешь, как сделать так, что бы притоки не пересекались и не создавали островки. А если захочешь, сможешь контролировать появление островков.

    Генерируя реки/подземелья/лабиринты по схожему алгоритму, мы можем контролировать весь процесс возведения (расставляя ловушки, водопады, тупики, npc, определяя уровень запутанности), оставляя волю случаю.

    Я не достаточно подробно описал алгоритм, но уверен, идею ты уловил.
    Ответ написан
    2 комментария