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

    ~([a-z]+)|([а-я]+)~iu
    preg_match_all
    $1 анг
    $2 русс
    Ответ написан
    Комментировать
  • Как залить большой дамп в базу phpmyadmin?

    если sql то misql -uПользователь -pПароль имя базы<фаил.sql
    если csv то
    $a = mysql_query("
    LOAD DATA INFILE '/home/admin/web/public_html/car_characteristic_value.csv' REPLACE INTO TABLE `characteristic_value`
     FIELDS TERMINATED BY ','
        ENCLOSED BY '\''
     LINES TERMINATED BY '\r\n';
    ") or die('SQL ERROR:' . mysql_error());;
    Ответ написан
    Комментировать
  • Редирект php, есть ли расширенные возможности?

    Единственное решение которое мне в голову лезет это передавать get параметр и по его присутствию выводить строку в хедере страницы
    header("Location:$URL"); // нету такого кода чтобы бот понял что страница выпала с индекса header("Location:$URL" , true , ваш код ); /// до одного места в этой ситуации
    если же не хочется портить url то при редиректе объявите константу потом с помощью нее выведите туже строку и переопределите константу после выводи что бы не было проблем.

    Robots.txt в большинстве случаев не панацея для закрытия контента так как к примеру на другом сайте могут разместить ссылку на ваш контент и бот благополучно проиндексирует вашу страницу. мета тег будет выходом.
    Ответ написан
  • Как корректно сделать запрос vk api: users.getNearby?

    https://new.vk.com/dev/permissions
    Пропишите при получении токена то что вам надо вероятно вы делаете запросы на те данные которые пользователь не дал разрешение
    Ответ написан
  • Как определить если ли частица "НЕ" перед словом в php?

    $string = 'Текст текст текст не анон текст текст';
    $arr_string = explode(' ', $string);
    
    $search = array_search('анон',$arr_string);
    
    if (strtolower($arr_string[$search-1]) === 'не'){
        echo $arr_string[$search-1].' '.$arr_string[$search];
    }else {
        echo $arr_string[$search];
    }
    Ответ написан
    Комментировать
  • Как разделить строку на 3 часть и сделать цифры из неё в php?

    $res = explode ('-', ваша строка)
    Var_dump ($res);
    И если не числа то приведи их спомощью (int)
    Ответ написан
    Комментировать
  • Как посчитать массив?

    $arr = array (10,'+',10, '*', 2 , '+', 10);
    $umn = array_search('*',$arr);
    $umn_res = $arr[$umn-1] * $arr[$umn+1];
    unset($arr[$umn-1]);
    unset($arr[$umn+1]);
    unset($arr[$umn]);
    echo array_sum($arr)+$umn_res;

    Данное решение только на умножение и сложение можете по такому прицепу продумать и остальные операции, но учтите что если 2 раза будет повторяться умножение тогда результат будет не корректный вам нужно будет использовать array-keys вместо array-search и проходить по результату найденных ключей циклом и потом уже думать что делать с этими цифрами. Пищу для ума дал дальше сами))
    Ответ написан
  • Как выбрать массив из массива?

    $arr=array();
    $all= ваш тот массив;
    If (coun(массив['num']>=coun(массив['oper']){
    $qty=coun(массив['num'];}else{
    $qty= coun(массив['oper'])}
    For ($i=0; $i <=$qty; $i++){
    $arr[]=$all['num'][$i];
    $arr[]=$all['oper'][$i];
    }
    $new_array = array_diff($arr, array(''));
    Ответ написан
  • Как сохранить часть страницы на сервере?

    // Если существует кэшированная версия:
      if (file_exists('./cache/2.cache')) {
        // Читаем и выводим файл
        readfile('./cache/2.cache');
        exit();
      }
    
      // Начинаем буферизацию вывода
      ob_start();
    
      // Выводим остальной HTML
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>Кэшированная страница</title>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
    </head>
    <body>
    Эта страница кэшируется средствами PHP
    <a href="http://www.php.net/outcontrol">Функции управления выводом</a>
    </body>
    </html>
    <?
      // Получаем содержимое буфера
      $buffer = ob_get_contents();
    
      // Останов буферирования и вывод буфера
      ob_end_flush();
    
      // Сохранение кэш-файла с контентом
      $fp = fopen('./cache/2.cache', 'w');
      fwrite($fp, $buffer);
      fclose($fp);
    https://htmlweb.ru/php/php_cache.php
    Ответ написан
    Комментировать
  • Как вытащить все div с помощью регулярок?

    Используйте как вам говорили preg_match_all и изучите жадность и линивость иначи .* будет забирать весь текс до последнего закрытого div
    Ну и по вопросу
    <div>(.*?)<\/div>
    в preg_match_all в результирующий массив в ;$res[0] массив попадает все выражение целиком а вот в $res[1] массив попадет именно то что вам нужно.
    Ответ написан
    Комментировать
  • $_Post не принимает/отдаёт значение.Почему?

    var art_id; /// не понятно вообще что вы туда могли положить когда вы ее просто обьявили

    в json приняли значит декодируйтеjson-decode а не кодируйте json-encode
    а то вы json отправляете в выборку
    Ответ написан
  • Кто какие библиотеки / скрипты используется для красивого и удобного upload'a изображений на сайт?

    www.dropzonejs.com простой и удобный загрузчик. Легко интегрируеться
    Ответ написан
    Комментировать
  • Как вытащить все ссылки после определенной строки?

    Реализация выше сказанного
    $t = '<script type="text/javascript">
    if(!window.runParams) {
    window.runParams = {};
    }
    window.runParams.imageServer="http://i00.i.aliimg.com";
    window.runParams.imageDetailPageURL="//www.aliexpress.com/item-img/2015-Winter-Beanies-Solid-Color-Hat-Unisex-Plain-Warm-Soft-Beanie-Skull-Knit-Cap-Hats-Knitted/32462312884.html";
    window.runParams.imageBigViewURL=[
    "http://g02.a.alicdn.com/kf/HTB1JJG8JpXXXXb7XFXXq6xXFXXXs/2015-зимние-шапочки-сплошной-цвет-шляпа-мужская-обычная-теплый-мягкий-шапочка-череп-вязаные-Touca-Gorro-шапки.jpg",
    "http://g02.a.alicdn.com/kf/HTB1frm7JpXXXXbFXFXXq6xXFXXXo/2015-зимние-шапочки-сплошной-цвет-шляпа-мужская-обычная-теплый-мягкий-шапочка-череп-вязаные-Touca-Gorro-шапки.jpg",
    "http://g02.a.alicdn.com/kf/HTB1BsaSJpXXXXa3aXXXq6xXFXXX9/2015-зимние-шапочки-сплошной-цвет-шляпа-мужская-обычная-теплый-мягкий-шапочка-череп-вязаные-Touca-Gorro-шапки.jpg",
    "http://g02.a.alicdn.com/kf/HTB1tUYfJpXXXXbVXXXXq6xXFXXXc/2015-зимние-шапочки-сплошной-цвет-шляпа-мужская-обычная-теплый-мягкий-шапочка-череп-вязаные-Touca-Gorro-шапки.jpg",
    "http://g04.a.alicdn.com/kf/HTB1LRSUJpXXXXaeaXXXq6xXFXXXr/2015-зимние-шапочки-сплошной-цвет-шляпа-мужская-обычная-теплый-мягкий-шапочка-череп-вязаные-Touca-Gorro-шапки.jpg",
    "http://g02.a.alicdn.com/kf/HTB1VSi8JpXXXXbUXFXXq6xXFXXXU/2015-зимние-шапочки-сплошной-цвет-шляпа-мужская-обычная-теплый-мягкий-шапочка-череп-вязаные-Touca-Gorro-шапки.jpg"
    ];
    window.runParams.mainBigPic = "http://g02.a.alicdn.com/kf/HTB1JJG8JpXXXXb7XFXXq6xXFXXXs/2015-зимние-шапочки-сплошной-цвет-шляпа-мужская-обычная-теплый-мягкий-шапочка-череп-вязаные-Touca-Gorro-шапки111.jpg";
    </script>';
    $a = explode("\n", $t);    ///$a = split("\n", $t);
    $qti = 0;
    $search = array();
    foreach ($a as $value){
        $qti++;
        if ($value == 'window.runParams.imageBigViewURL=['){
            $i = $qti;
        }
        if ($qti >= $i){
           if ( preg_match('~(http.*jpg)~',$value, $res)){
               $search[]= $res['0'];
           }
        }
    }
    
    echo '<pre>';
    var_dump($search);
    6d83b50ad0fe4c8fbc7c64a66665b257.png
    Ответ написан
    Комментировать
  • На сайте заголовок "перекрывает" вкладку обратной связи, что делать?

    htmlbook.ru/css/z-index выставите в css или js напишите чтобы меняль этот z-index ... и вообще причем тут тег php

    p. s.
    .site-header {
        background-color: #fff;
        border-bottom: 1px solid #e7e7e7;
        clear: both;
        display: block;
        min-height: 88px;
        opacity: 1;
        position: relative;
        z-index: 30001;             <--------  вообще убрать 
    }


    в файле /wp-content/themes/i-excel/style.css строка 938
    Как уберете эту строчку все у вас наладится))
    и еще совет допишите к popup окнам margin-top: 60px; а то прилипает к верху не очень красиво)))
    Ответ написан
    3 комментария
  • Как сравнить ключи двух разных ассоциативных массивов?

    Думаю верно вас понял
    <?php
    /**
     * Created by PhpStorm.
     * User: alex
     * Date: 08.05.16
     * Time: 17:57
     */
    
    
    $resurses = array("0" => array(
        "id" => "7", "input_ingridient" => "Железная руда", "input_value" => "2000",
        "output_ingridient" => "Сталь", "output_value" => "1600"),
        "1" => array(
            "id" => "5", "input_ingridient" => "Древесина", "input_value" => "1000", "output_ingridient" => "Бревно",
            "output_value" => "600"));
    
    $recipes = array(
        "0" => array(
    
            "id" => "4", "title_recipe" => "Первый рецепт", "1_title_ingridient" => "Сталь",
            "1_value_ingridient" => "200", "2_title_ingridient" => "Название 2", "2_value_ingridient" => "2",
            "3_title_ingridient" => "Название 3",
            "3_value_ingridient" => "3", "4_title_ingridient" => "Название 4", "4_value_ingridient" => "4",
            "5_title_ingridient" => "Название 5",
            "5_value_ingridient" => "5", "6_title_ingridient" => "Название 6", "6_value_ingridient" => "6",
            "7_title_ingridient" => "Название 7",
            "7_value_ingridient" => "7", "8_title_ingridient" => "Название 8", "8_value_ingridient" => "8",
            "9_title_ingridient" => "Название 9",
            "9_value_ingridient" => "9", "10_title_ingridient" => "Название 10", "10_value_ingridient" => "10"),
        "1" => array(
            "id" => "2", "title_recipe" => "Второй рецепт", "1_title_ingridient" => "Название 11",
            "1_value_ingridient" => "234234", "2_title_ingridient" => "Название 12", "2_value_ingridient" => "234234",
            "3_title_ingridient" => "Название 13", "3_value_ingridient" => "434", "4_title_ingridient" => "Название 14",
            "4_value_ingridient" => "43443", "5_title_ingridient" => "Название 15", "5_value_ingridient" => "100",
            "6_title_ingridient" => "Название 6", "6_value_ingridient" => "23423", "7_title_ingridient" => "Название 7",
            "7_value_ingridient" => "234234", "8_title_ingridient" => "Название 8", "8_value_ingridient" => "234324",
            "9_title_ingridient" => "Название 9", "9_value_ingridient" => "43", "10_title_ingridient" => "Название 10",
            "10_value_ingridient" => "4"));
    function resurses($resurses, $recipes)
    {
        foreach ($resurses as $key => $resurse) {
            foreach ($recipes as $recipe) {
                $qty = count($recipe);
                foreach ($recipe as $key_item => $item) {
                    $qty--;
                    if ($resurse['output_ingridient'] == $recipe[$qty . '_title_ingridient']) {
                        $resurses[$key]['input_value'] = $recipe[$qty . '_value_ingridient'] * $resurse['input_value'];
                        for ($i = 1; $i <= 10; $i++) {
    
                            $resurses[$key][$i . '_title_ingridient'] = $recipe[$i . '_title_ingridient'];
                            $resurses[$key][$i . '_value_ingridient'] = $recipe[$i . '_value_ingridient'];
                        }
    
                    }
    
    
                }
            }
    
        }
        return $resurses;
    }
    
    $resurses = resurses($resurses, $recipes);
    
    foreach ($resurses as $a) {
        $qty_res = (count($a) - 6) / 2;
        echo ' <div class="panel panel-default custom-panel">
            <div class="panel-heading">Title recipe</div>
            <div class="panel-body">
                <ul class="list-group res">
                    <li class="list-group-item">' . $a['input_ingridient'] . ' <span class="badge">' . $a['input_value'] . '</span></li>';
    
        for ($i = 1; $i <= $qty_res; $i++) {
    
            echo '<li class="list-group-item custom-list-group-item">' . $a[$i . '_title_ingridient'] .
                ' <span class="badge custom-badge">' . $a[$i . '_value_ingridient'] . '</span></li>';
        }
        echo '  </ul>
    
            </div>
            <div class="panel-footer">Показано количество ингридиентов на одно изготовление.</div>
        </div>';
    }

    233dacf3666b498db9ab339f404b5b5d.png
    Ответ написан
    2 комментария
  • Каким способом можно показать свои проекты??

    Купите берый ip у провайдера и пускай к вашему серверу обращаются на прямую.
    Ответ написан
    Комментировать
  • Скрипт добавляет записи в БД после завершения?

    Возможно кешированте запроса но мало вероятно. 100т это очень мало. Если скрипт не висит в процессах то ни чего не добавляется. У меня было так когда я добавлял 2мил записей . А то что прибавляеться это возможно тупит phpmyadmin проверти count(*) в php . Такое часто бывает что при большом обьеме phpmyadmin не корректно считает строки и выдает то больше то меньше число и можно подумать что ваш скрипт выполняеться.
    Ответ написан
    Комментировать
  • Как вытащить по порядку из файла данные в php?

    $arr = file('file-name');

    For ($I =0; $i>=count($arr); $i++){
    $arrs[]= array($arr[$i*3],$arr[$i*3+1],$arr[$i*3+2]);
    $int = rand(0, count($arrs)-2);
    Foreach ( $arrs[$int] as $arr)
    Echo $arr;
    С тел написал сорри
    Ответ написан
    1 комментарий
  • Как сделать чтобы AUTO INCREMENT заполнял удалённые значения (например id: 1,2,3,4. Удалил 3. След. добавляемое 3, а не 5)?

    $q=sql('SELECT count(*) as counter from gr');
    $data=mysql_fetch_assoc($q); $counter=($data?intval($data['counter']):0);
    for($id=1; $id<=$counter; $id++){ // перенумеровываю все id
    $result = sql('SELECT * from gr WHERE id='.$id.' LIMIT 1');
    if(mysql_num_rows($result)==0) {// id - свободен
    $result = sql('SELECT MAX(id) as id from gr');
    if (($row = mysql_fetch_assoc($result)) && ($id<$row['id'])){
    sql('UPDATE gr SET id=LAST_INSERT_ID('.$id.') WHERE id='.$row['id'].' LIMIT 1');
    // то же сделать во всех связанных базах!
    sql('UPDATE price SET gr='.$id.' WHERE gr='.$row['id']);
    sql('UPDATE kateg SET gr='.$id.' WHERE gr='.$row['id']);
    }
    else break;
    }
    }

    В 99 процентах случаях это делать не нужно. Уникальный ключ для того и создан, чтобы при удалении записи оставалась "дырка" в нумерации. Но, иногда приходится. Например, я создавал сайт и набирал справочник для клиента на локальной машине, естественно, было много правок. Хотелось при "выкладывании вживую" чтобы все выглядело красиво. Вот для такого случая и сделан следующий скриптик:

    htmlweb.ru/php/mysql_faq.php
    Ответ написан