Loading...
Типа покупка ресурсов в игре . Строго не судите , учу пыху пару месяцев Первый файл
php
   <?php    class obmen  {  public static function r($type) { return package('price-resurs')[$type]; }      //узнать сколько добавить ресурса за покупку public static function get_resurs_set($type, $lot_id) { return package('price-resurs')[$type][$lot_id]['set']; }    //узнать цену ресурса public static function get_resurs_price($type, $lot_id) { return package('price-resurs')[$type][$lot_id]['mutagen_price']; }    //контролер покупки public static function boy_ctr($lot_id, $type) { $q = package('price-resurs')[$type][$lot_id]['mutagen_price'];  if (get_mutagen_by_id(ID) >= $q) {  if ($type == 'bucks') {  $resurs = self::get_resurs_set($type, $lot_id);  $mutagen = self::get_resurs_price($type, $lot_id);  set_bucks($resurs, ID); //добавить баксы }  if ($type == 'metall') {  $resurs = self::get_resurs_set($type, $lot_id);  $mutagen = self::get_resurs_price($type, $lot_id);  set_metal($resurs, ID); //добавить металл  }  set_mutagen(-$mutagen, ID); //минус мутаген  } else { $_SESSION['err'] = 'Не достаточно мутагена!'; }  }      }            class obmen_model  {  public function get($data) //принимаю масив с контролера  {    $type = $data['type'];    if ($type == 'bucks') {  $t = obmen::r('bucks');  }  if ($type == 'metall') {  $t = obmen::r('metall');  }        return [  't' => $t,  'type' => $data['type'],  ];  }  }   
Второй
php
   <?php  require_once(ROOT . 'project/internal/core.php');  $type_default = 'bucks'; $type_perhaps = [ 'bucks',  'metall',  ];   $lot_id = filter_input(INPUT_GET, 'lot_id');  $type = filter_input(INPUT_GET, 'p'); if ( ! in_array($type, $type_perhaps)) { $type = $type_default; }  //нажата кнопка купить if( !empty($lot_id) ) { obmen::boy_ctr($lot_id,$type);    // что бы при перезагркзеи страницы не повторялся код   redirect_return('index.php?page=obmen'); }  $data = [     'type' => $type, ];    view('tpl/cap'); view('tpl/header'); view('tpl/header-enter'); view('obmen',  (new obmen_model)->get($data)); view('tpl/footer-enter'); view('tpl/footer');   
Третий
php
   <div class="block"> Магазин ресурсов </div>        <div class="fon-lvl">        <?php if ($type == 'bucks') : ?>          <div class="atom">Баксы</div>      <?php else : ?>          <a href="<?= subord_url('obmen', 'p=bucks') ?>" class="atom">Баксы</a>      <?php endif ?>        <?php if ($type == 'metall') : ?>          <div class="atom">Металлалом</div>      <?php else : ?>          <a href="<?= subord_url('obmen', 'p=metall') ?>" class="atom">Металлалом</a>      <?php endif ?>    </div>  <div>      <?php foreach ($t as $val) : ?>          <div class="fon-tex">            <a href="<?= subord_url('obmen', "p=$type&lot_id=$val[id]" ) ?>"> Купить <?= $val['set'] ?> <?= $val['name'] ?> за <?= $val['mutagen_price'] ?> </a>          </div>      <?php endforeach ?>    </div>   


Изображение

------
80414_Screenshot_20220108204734986_com.android.chrome.jpg (556.5 Kb)
Скачиваний: 101
Тут можно было в три строки уложиться
Dofor (08.01.2022 в 20:57)
Тут можно было в три строки уложиться

Говорит человек, который не шарит в начальных моментах https://i.imgur.com/uChZjxG.png
Сам не сильно шарю, но как для нескольких месяцев вполне не плохо 👍
213731682 , у тебя все методы класса obmen статичные, логично было бы сделать его абстрактным - конечно если в планах держать только статик методы, но опять же, класс всегда можно перевести в инстанс
213731682 , public static function r($type) {

никогда не называй методы r , a GG, ZZ, и так далее, проблема в том что никто кроме тебя не знает что делает метод r пока не посмотрит в метод r, это время затратно
Trec80 , Это для теста был назван , назвал так временно
213731682 , у тебя все методы принимают тип , я бы обьявил его, и в конструктор передал бы этот самый тип и ипользовал его через конектс
Trec80 , можешь на моем коде так сделать ?) Как пример , в л.с или сюда же ,буду благодарен
НЕЙМИНГ ССУКА!!! Не obmen а swap!!! ТОЛЬКО на английском!!!
Онлайн: 0
Время:
Gen. 0.1067
(c) Bym.Guru 2010-2026