Задать вопрос
PHP5, HTML, CSS, JavaScript, PhpStorm, Yii, Mysql, Ubuntu, Linux Mint, Git

Наибольший вклад в теги

Все теги (13)

Лучшие ответы пользователя

Все ответы (9)
  • Почему не работает форма обратной связи?

    @askarik
    веб-разработчик
    всё просто
    сама функция на хостинге может быть отключена хостерами
    а если даже отправляется письмо, часто бывает такое, что письма отправленные этой функцией попадают в спам
    одно из двух
    Ответ написан
    4 комментария
  • Структура php (как обратиться к массиву из другого файла)?

    @askarik
    веб-разработчик
    лучше всего сделать файл config.php, который в дальнейшем будет подключаться в файле index.php и comand.php, соответственно эти переменные будут доступны в этих файлах, так и делается обычно
    Ответ написан
    2 комментария
  • Как сделать обязательным email у oAuth провайдеров?

    @askarik
    веб-разработчик
    как раз недавно работал с этим
    решение есть, просто кода много будет если я его выложу здесь
    опишу всё так, если не понятно спросите, отвечу

    в общем facebook: да, здесь есть такая ерунда, что сама социалка позволяет убрать галочку пользователю, но есть АПИ метод, который может узнать, какие права дал нам этот пользователь а именно
    /me/permissions?access_token=
    если в ответе от АПИ, в массиве для email status == decline - то нет прав, если granted - то есть
    если нет, можно запросить доступ к email заново
    header("HTTP/1.1 302 Found");
    header(
    'Location: '.$cfg['urls']['authorize_endpoint'].
    'auth_type=rerequest&'.//этот парам. указывает что надо сделать перезапрос доступа к email пользователя (не получится отказать в доступе к email)
    'client_id='.$cfg['client_id'].'&'.
    'response_type='.$cfg['response_type'].'&'.
    'state='.$cfg['state'].'&'.
    'scope='.$cfg['scope'].'&'.
    'redirect_uri='.$cfg['urls']['redirect_uri']);


    тут то уже пользователь не сможет галочку снять, либо ОК либо ОТМЕНА

    что касается ВК:
    тоже всё легко, используй OAuth 2.0
    header("HTTP/1.1 302 Found");
    header(
    'Location: '.$cfg['urls']['authorize_endpoint'].
    'client_id='.$cfg['client_id'].'&'.
    'response_type='.$cfg['response_type'].'&'.
    'scope=email&'.//вот оно то место, где ты запрашиваешь email
    'v='.$cfg['v'].'&'.
    'redirect_uri='.$cfg['urls']['redirect_uri']);

    если используешь OAuth 2.0, там галочку для email снять нельзя
    Ответ написан
    5 комментариев
  • Как правильно написать регулярное выражение?

    @askarik
    веб-разработчик
    Вот проверенная регулярка
    ([a-zA-Z]+[a-zA-Z-']*)+
    fa7d061df57141b6839b9e171b5393fa.png
    Можете его оптимизировать если есть надобность. Этот скрин сделан с PhpStorm-а, там есть возможность в поиске/замене использовать регулярку, мне всегда помогает. То что выделено - это те значения, которые попадают под регулярку
    Ответ написан
    Комментировать
  • Почему не срабатывает MySQL запрос?

    @askarik
    веб-разработчик
    Странно, у меня сработало, давайте дампы.
    Это мой пример:
    CREATE TABLE `table1` ( 
    	`id` INT( 255 ) AUTO_INCREMENT NOT NULL, 
    	`title` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, 
    	`parent_id` INT( 255 ) NULL,
    	 PRIMARY KEY ( `id` )
     )
    CHARACTER SET = utf8
    COLLATE = utf8_general_ci
    ENGINE = INNODB
    AUTO_INCREMENT = 2;
    
    INSERT INTO `table1`(`id`,`title`,`parent_id`) VALUES (1,'first',0);
    INSERT INTO `table1`(`id`,`title`,`parent_id`) VALUES (2,'second',1);
    INSERT INTO `table1`(`id`,`title`,`parent_id`) VALUES (3,'other 1',NULL);
    INSERT INTO `table1`(`id`,`title`,`parent_id`) VALUES (4,'other 2',NULL);
    
    INSERT INTO table1 (title, parent_id)
    SELECT title, id FROM table1 WHERE parent_id IS NULL

    5368f61598f4475a87e7622c0bfc21e4.png3ab1c405efd34043b245dfaaa0e36834.pnga8a43aa40e834c1fbfdec919a9a7cb34.png
    Ответ написан
    Комментировать