За последние 24 часа нас посетили 49122 программиста и 1758 роботов. Сейчас ищут 687 программистов ...

Тривиальный вопрос по пользователям.

Тема в разделе "Подворотня", создана пользователем askanim, 19 июл 2016.

  1. runcore

    runcore Старожил

    С нами с:
    12 окт 2012
    Сообщения:
    3.625
    Симпатии:
    158
    да? и в каком месте она возвращает? где ты у меня видишь return ?
     
  2. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    @runcore да узбагойся ты подкинул хороший пример использования функций я его запомню... Как сделать на одной функции возврат а на другой нет просто вызвав одну и туже функцию с одним и тем же кодом. Но знаешь по сути клал я на эти две функции при релизе движка их там не будет. Поэтому я на них даже не смотрел, я сам держусь такого мнения при разработке всё что можно повторять должно лежать в функции для вызова, всё что дублируется, не должно дублироваться а должно вызыватсья одной строчкой. Но эти функции бесполезные, поэтому они там валяются уже два месяца не переделанные, они мне нужны были для тестов и пысал я их быстро на самом деле ходовые функции в двиге это

    PHP:
    1. $this->prepareData();
    2. // and
    3.  
    4. $this->execute() ;
    Всё по сути остальное всё лишее ну ob_start на крайняк можно оставить мало ли чё будет.

    Я не считаю себя там ппц гуру, и не претендовал я там на должность но то что написано в их требованиях, знаем и делаем это. Единственное не изучали битрикс, потому что не вижу смысла его изучать. Когда страница с битриксом грузится две недели, по стандарту, а моя с выгрузкой из множества к строк в бд грузится быстрей. Вон чувак оплатил битрикс вылел туда базу из 1с и сидит радуется а я смотрю и у меня глаз дёргается когда кружок наверху крутится дольше чем положена
     
    #52 askanim, 20 июл 2016
    Последнее редактирование: 20 июл 2016
  3. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    А вообще на любом белом платье можно найти чёрненькую точку, поэтому мне кажется парное программирование, это чёткая вещь, но напарника у меня не так что соряньте так что явно на релизе будет целая куча таких вещей которых меня носом потыкают и я их перепишу, после таких вот тыков. Говорил же сам до релиза ещё далеко, framework назвать полноценным нельзя, это так на коленке пишу, развиваюсь но когда будет релиз поверь я тебя удивлю он будет исправно работать и там будет поминимому гавно кода, так перед релизом почистятся все функции типа повторяющихся и тд. Просто достал обзываться, я очень много времени трачу на своё самообразование, я целыми днями штудирую даже специализированную литературу читаю по ООП, и пробую разные методики. И я уверен даже специалисты в крупных фирмах сидят и читают такую литературу, каждый божий день, иначе они не были специалистами но и не надо меня к уровню джуниора приравнивать я вполне в самостоятельной форме способен написать что-то сам без проверки, чтобы это нормально работало, и поминимому гавно кода. всё зависит от сроков написания проекта.
    --- Добавлено ---
    по удалял лишнее

    и сократил повторение

    https://github.com/askanim/bike_001/compare/master...LaravelForKettle:patch-5
    --- Добавлено ---
    есть люди которые знают больше меня поэтому я и спрашиваю всё что у меня в голове имеет сомнение. Мне не стыдно обосраться так как после обсирания начинается просветление.
     
    #53 askanim, 20 июл 2016
    Последнее редактирование: 20 июл 2016
  4. runcore

    runcore Старожил

    С нами с:
    12 окт 2012
    Сообщения:
    3.625
    Симпатии:
    158
    верни обратно.
    теперь getData() вообще бесполезная и никогда ничего не вернет.
     
  5. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    @runcore почему ? по идее в теории должна возвращать... или я уже поплыл чё то. Ща секу мозги всрались.

    Я беру вызываю процедуру которая не чего не возвращает!

    А просто исполняет код я возвращаю просто исполнение этой процедуры, а вернёт ли она мне полученный массив ?
    --- Добавлено ---
    Ааа. точняк она так не хера не вернёт. Она же ссылается на метод, и только отправляет его без возврата в результате переменная к которой будет присвоена функция будет пустой.
    --- Добавлено ---
    В теори тогда только вот так можно сделать.

    PHP:
    1. public function contGetDate1 ($value) {
    2.     $this->value($value);
    3.     $newArray = [];
    4.     $newArray['newObject'] = new $this->newObject();
    5.     $newArray['newMethod'] = $this->newMethod;
    6.     return $newArray;
    7. }
    8. public function also($vozvrat, $parameters, $try = 1) {
    9.     if ($parameters != Null) {
    10.         if ($try == 1) {
    11.             return $vozvrat['newObject']->$vozvrat['newMethod']($parameters);
    12.         }
    13.         else { $vozvrat['newObject']->$vozvrat['newMethod']($parameters); }
    14.     } else {
    15.         $vozvrat['newObject']->$vozvrat['newMethod']();
    16.     }
    17. }
    18. public function controller2 ($value, $parameters = Null) {
    19.  
    20.     $vozvrat = $this->contGetDate1($value);
    21.  
    22.     $this->also($vozvrat, $parameters, 0);
    23. }
    24.  
    25. public function getData2 ($value, $parameters = Null) {
    26.  
    27.     $vozvrat = $this->contGetDate1($value);
    28.     return $this->also($vozvrat, $parameters);
    29. }
    Впервый раз написал не верно, переписал.
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    зачем ты на человека наезжаешь. Лучше поддержи.
     
    askanim и denis01 нравится это.
  7. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    @igordata Во ты здесь подскажи пожалуйста, что тут можно сделать лучше и как быть но правда конечно нету полно охвата движка и не понятно что я делаю... Потому что выдран кусок из системы... :( но пока сам понимаю что рановато для релиза, и поэтому не хочу выкладывать всё на обозрение. Я ещё не готов к запуску его.

    https://github.com/LaravelForKettle...41bc66e9ea1e7b4e6abd56478fd780d10/controllers
     
  8. runcore

    runcore Старожил

    С нами с:
    12 окт 2012
    Сообщения:
    3.625
    Симпатии:
    158
    это разве наезд. это так... просто чтоб немного умерил необоснованный гонор.
     
  9. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    Суть того что я хочу реализовать это передачу массивов из моделей, во вью, и возлагаю эту задачу на контроллеры они определяют модели и перекидывают это в конкретную вью. Понятно что это можно сделать и так, но я хочу сделать чтобы это было реализовывать проще и одной строчкой суть моя сократить собственную работу, по написанию веб приложений.
    --- Добавлено ---
    @runcore это тебе так показалось что у меня гонор, а я не где не говорил что круче всего и вся. Прост овысказал своё мнение по отношении к битриксу в другой теме, и ответил на твои посты в этой теме по поводу наездов на меня.
     
  10. Anhk

    Anhk Активный пользователь

    С нами с:
    13 дек 2015
    Сообщения:
    219
    Симпатии:
    11
    меня можно не слушать, но, Асканим, где валидация?
     
  11. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    @Anhk Какая валидация? Валидация чего и для чего???:eek:
    --- Добавлено ---
    @Anhk ткни в строку кода или назови метод и скажи какая валидация, чего валидация для чего она там по твоему мнению?) Просто мне интересно может я чё не обдумал, просто понять не могу, к чему там валидация поделись мыслями.
     
  12. Anhk

    Anhk Активный пользователь

    С нами с:
    13 дек 2015
    Сообщения:
    219
    Симпатии:
    11
    читал, что никогда нельзя доверять тому, что приходит постами и гетами, что приходит при работе пользователя.
    PHP:
    1. +                $newArray = [];
    2. +                $newArray['Category'] = $_POST['Category'];
    3. +                $newArray['numberOne'] = $_POST['numberOne'];
    4. +                $newArray['numberTwo'] = $_POST['numberTwo'];
    5. +                $newArray['limitAll'] = $_POST['limitAll'];
    6. +                $newArray['on'] = $_POST['on'];
    7. +                $newArray['sort'] = $_POST['sort'];
    --- Добавлено ---
    повторюсь, я не профессионал, как большинство на этом форуме, - меня можешь не слушать.
     
  13. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    @Anhk Смотря откуда приходит. Валидацию нужно делать там где она не обходима, а именно валидация нужно там где конечный пользователь может внести какие либо изменения в твой скрипт, чтобы не поехала например твоя бд, но обычно это всё делается на уровне запросов к бд, а остальное наврятли сломает твой скрипт, если только данные значения переменных не передаёшь в функцию eval(); и кстате, валидация нужна по большей части ещё для того чтобы он тебе не испортил твой задумнный вывод информации чтобы пользователь не мог изменить это.
    --- Добавлено ---
    @Anhk в данном случае у меня дальеш стоят в модели, погрешности допустим ты подменишь post запросы которые идут у меня через аякс, да например исправишь в data_id и напишешь там что то не понятное, сайт лишь выдаст что извините но мой движок выдаст извините вы ввели что-т оне то.
     
  14. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    @askanim, делай валидацию в контроллере страницы. А модель пусть занимается своей работой.

    Лучший вариант, даже определить класс Request и там же обрабатывать все данные получаемые от пользователя.
     
  15. Anhk

    Anhk Активный пользователь

    С нами с:
    13 дек 2015
    Сообщения:
    219
    Симпатии:
    11
    предпочитаю считать, что я многого не знаю, а потому трухацкеры могут(!) поломать мой сайт сделать, хоть и не станут (кому оно надо?). ну, короче, придумываю себе лишнюю работу, которая в теории может меня спасти, ЛОЛ.
    твою мысль я понял.
    --- Добавлено ---
    @mahmuzar, не модель ли должна валидировать данные?
     
  16. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    @Anhk, задача модели работа с базой данных.
    --- Добавлено ---
    В модель данные должны попадать уже готовыми к использованию.
    --- Добавлено ---
    имхо
     
  17. Anhk

    Anhk Активный пользователь

    С нами с:
    13 дек 2015
    Сообщения:
    219
    Симпатии:
    11
    хм, я считал, что это не единственная задача модели. она занимается всеми вычислениями, валидацией, работой с базой, - в моём понимании.
    контроллер лишь связующее звено, которое дёргает за ниточки, чтобы вызвать нужный элемент системы.
     
  18. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    @mahmuzar Ты видишь тfм валидации какие нибудь ? на тебе файл модели.
    PHP:
    1. <?php
    2. /**
    3. * Created by PhpStorm.
    4. * User: askanim
    5. * Date: 24.06.2016
    6. * Time: 18:32
    7. */
    8.  
    9. namespace App\Models\Product;
    10.  
    11.  
    12. use System\Http\Model\Model;
    13.  
    14. class Product extends Model
    15. {
    16.     public function getProducts($idArray)
    17.     {
    18.             //echo $idArray['numberOne'].''.$idArray['numberTwo'];
    19.             $result = $this->table('Product')
    20.                 ->where(['parent_category="'.$idArray['Category'].'"'])
    21.                 ->limit($idArray['numberOne'].', '.$idArray['numberTwo'])
    22.                 ->order($idArray['sort'])
    23.                 ->get();
    24.  
    25.  
    26.         if (empty($result)) {
    27.                 header("Location: /whoops");
    28.                 exit();
    29.             }
    30.  
    31.         return $result;
    32.  
    33.  
    34.     }
    35.     public function getNavigation($idArray) {
    36.         /*
    37.          * Костыль ну ладно... Потом перепишем
    38.          * Тут я делаю выборку всех товаров в этой категории и делю
    39.          * по странично исходя от лимита товара на страницу
    40.          * Короче строю пагинацию
    41.          *
    42.          *
    43.          * */
    44.  
    45.         $resultTwo = $this->table('Product')
    46.             ->where(['parent_category="'.$idArray['Category'].'"'])
    47.             ->get(['COUNT(id) As count']);
    48.         $ArrayPage = [];
    49.         $ArrayPage['products'] = [];
    50.         $pageNumber = $resultTwo[0]['count'] / $idArray['limitAll'];
    51.         $pageNumber = ceil($pageNumber);
    52.         $pageItems = 0;
    53.         for ($i = 1; $i<=$pageNumber; $i++ ) {
    54.                 $ArrayPage['products'][$i]['id'] = $i;
    55.                 $ArrayPage['products'][$i]['pageNext'] = $pageItems;
    56.                 $pageItems = $pageItems+$idArray['limitAll'];
    57.                 $ArrayPage['products'][$i]['pageNow'] = $idArray['limitAll'];
    58.         };
    59.         $ArrayPage['page'] = [
    60.             'max_item' => $idArray['limitAll'],
    61.             'count_prod' => $resultTwo[0]['count'],
    62.             'count_pages' => $pageNumber
    63.         ];
    64.  
    65.         return $ArrayPage;
    66.     }
    67. }
    А там идёт раздвоение на какую обработку послать, то есть там условие, что если 0 то модель определить такую, если условие такое то и модель соотвественная условия вот и всё, в чём причина тут ещё либо какой лишней валидацие вы о чём вообще зачем, вы чё курили коллеги ?
     
  19. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
  20. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    @Anhk Тебе нужно поговорить с Lord_of_the_Developer мистер всея @mkramer
    --- Добавлено ---
    @mahmuzar Какая к чёрту ВАЛИДАЦИЯ !
    --- Добавлено ---
    @mahmuzar тебя куда понесло боже.... Госпади кто нибудь вразумети их у меян ща седло сгорит, за что зачем давайте везде лепить htmspecial у меня движок сам всё валидирует если ты ему сунешь то что не проходит он тебя пошлёт в whoops и всё там просто не пройдёт сравнение элементарно в базе и выдаст УПС не ту такой странички, а на уровне моего ДАО паттерна стоят на стражи функции prepare и quote, вы каких грибов ели ?
    --- Добавлено ---
    Я ЗДАЮСЬ О LORD_OF_THE_DEVELOPER @mkramer приди и вразуми их. О великий!
     
  21. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    @askanim, от того что ты не понимаешь что тебе говорят, ты просишь других вправить нам мозги. Супер :)
     
  22. Anhk

    Anhk Активный пользователь

    С нами с:
    13 дек 2015
    Сообщения:
    219
    Симпатии:
    11
    покажешь код?
     
  23. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    @Anhk У меня роутер отправит тебя нахрен если ты пошлёшь ему не верный запрос. Эти посты нужны лишь для того, чтобы передаться урл любой другой роутер в любом framework открой и посмотри, я тебя уверяю мой точно такой же по принципы и отличается только логикой работы.
     
  24. Anhk

    Anhk Активный пользователь

    С нами с:
    13 дек 2015
    Сообщения:
    219
    Симпатии:
    11
    не понял, а причем тут роутер и валидация пришедших данных? в случае с гетом - окей, допустим. остальные данные ты не валидируешь исходя из того, что в этом нет смысла (выше ты писал, что это ничего не поломает и всё такое в твоей системе)?
    и у меня ещё один вопрос: хули ты горишь-то так? расслабься, я ж не критикую тут твой проект. просто задаю вопросы для себя.
     
  25. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.201
    Симпатии:
    166
    Адрес:
    GABRIEL
    @mahmuzar Смотри у нас на форуме уважаемый
    @mkramer в других многочисленных темах и не однократно он про валидацию рассказывал и ты такое ощущение не читал даже его посты, хотя ты там что-то отвечал в этих темах и не однократно такое было, на моей памяти он рассказывал про валидацию.
    смотри на пальцах объясняю.
    Валидация нужна в трёх случаях.
    1. Если данные попадают в запрсоы к бд, но поверь функции типа quote либо же подготовленные запросы prepare. справятся с этой задачей на все 100%. Именно для этого zend их и написал.
    2. Как я понимаю из сказанного @mkramer она нужна ещё перед поподанием в функцию eval/

    3 И последний вариант, это произвольная валидация если лично ты не хочешь, чтобы у тебя в строке содержались какие то хрени от пользователей чтобы не дать им ввести то что ты лично не захотел увидеть.

    Всё в других случаех во всех любых остальных, ни что никогда введённое пользователем, как укогодно не поломает ваш скрипт.
    --- Добавлено ---
    @Anhk потому что ты вообще не въезжаешь в тему.