1

(1 відповідей, залишених у PHP)

Вітаю, хочу написати на Zend Framework 2 модуль "Альбом", просто надоїло щось міняти, щось дописувати і т.д., так вот, розкажіть з свого досвіду або якісь свої ідеї на рахунок функціоналу слайдера, тобто на рахунок налаштування виводу і вибірки фотографій, керування групами фотографій, їхніми статусами і щось типу цього... Одним словом щоб не було необхідності більше доповнювати модуль, а створити зразу весь функціонал. І доречі розподілити на налаштування для Бек-енд програміста щоб він міг припустимо розширити форму і таблицю альбому, і для адміністратора, щоб міг налаштовувати альбом.
Буду радий любим пропозиціям!
P.S. Я знаю що створив похожу тему http://replace.org.ua/topic/5563/ , але я вирішив що краще їх розділити щоб не було плутанини

2

(1 відповідей, залишених у PHP)

Вітаю, хочу написати на Zend Framework 2 модуль "Слайдер", просто надоїло щось міняти, щось дописувати і т.д., так вот, розкажіть з свого досвіду або якісь свої ідеї на рахунок функціоналу слайдера, тобто на рахунок налаштування виводу і вибірки слайдів, керування групами слайдів(якщо є в цьому смисл), їхніми статусами і щось типу цього... Одним словом щоб не було необхідності більше доповнювати модуль, а створити зразу весь функціонал. І доречі розподілити на налаштування для Бек-енд програміста щоб він міг припустимо розширити форму і таблицю слайдера, і для адміністратора, щоб міг налаштовувати слайдер.
Буду радий любим пропозиціям!

3

(28 відповідей, залишених у PHP)

DictatoR написав:

І взагалі це уже безглузд!

Погоджуюсь, тому тема ЗАКРИТА.

4

(28 відповідей, залишених у PHP)

DictatoR написав:
DictatoR написав:
o_0ps написав:

Доречі, є ще одна проблемка, при загрузці файлу з розширенням *.wmv функція перевірки типу навіть не запускається, а появляється вот така єрунда:

Аха, якщо ви не знаєте що це за "єрунда" тоді може спочатку підтягните англійську, а вже потім будите братись за програмування?
Там сказано, що файл який ви завантажуєте важить 26246879 байт, а встанрвлений ліміт  8388608  байт, фірштейн?  *HI*

o_0ps написав:

По ідеї та помилка з додаванням великих файлів виникати не буде, адже загрузка робіт в портфоліо доступна тільки адміністраторам, але всерівно неприємно...

І де я просив відключити повідомлення про помилку?

5

(28 відповідей, залишених у PHP)

DictatoR написав:

Так панове, це уже якась традиція цього форуму, що тема починається одним а закінчується іншим  *PARDON*
Через те що o_0ps неправильно формулює думку, там не було зрозуміло що саме він хотів дізнатись, спочатку він сказав що якась помилка непонятна, я пояснив що то таке, потім порадив вихід з його положення, а потім він сказав що не проблема в тій помилці, просто воно йому візуально заважає, так я й порадив йому

error_reporting(0);

Просто пиши тоді помилки і попередження в лог тай все!

Якщо я таке писав киниьте цитату тоді будь-ласка, я не пригадую...

6

(28 відповідей, залишених у PHP)

Djalin написав:

ні ви тоді питали як зробити щоб помилки не вилазили - це варіант рішення, який не усуває проблему але гасить самі помилки

Він не гасить помилки, а просто не відображає їх...

7

(28 відповідей, залишених у PHP)

o0ps написав:

Народ, виникла проблема, я роблю загрузку файла і мені потрібно дозволити тільки розширення картинок, я хотів використати валідатор IsImage но він мені завжди показує що файл не знайдено або розширення неправильне... Приходиться розширення валідувати вручну... Є вирішення? Киньте будь-ласка приклад робочої валідації

Читати потрібно уважно...

8

(28 відповідей, залишених у PHP)

DictatoR написав:
o_0ps написав:
DictatoR написав:

Якщо ви так чудово "розбираєтесь в sql" то от самі і розбирайтесь!
І непотрібно тут ображати інших користувачів!

А ви як завжди дуже корисні, що в попередній темі http://replace.org.ua/topic/4980/, що в цій...
P.S. Зайшли, придерлися до слова і офф. Стабільність тоже хороша риса  :)

Вибачаюсь що незважаючи на закриту тему всеодно пишу, просто в o_0ps слабо розвинуте логічне мислення,  бо в тій темі я дав відповідь і навіть привів приклад як її вирішити!
P. S. Якась дивна надмірна агресивність, певно перехідний вік) нічо, все мине!  :D

Це по вашому вирішення проблеми з загрузкою файлів надмірного розміру

error_reporting(0);

?
Краще почитайте додаткову літературу...

9

(28 відповідей, залишених у PHP)

Lordie написав:

o_0ps, не переходьте на особистості, особливо якщо самі вже зазначили що тема закрита.

Все, тема закрита, просто цікава людина Dictator  :)

10

(28 відповідей, залишених у PHP)

DictatoR написав:
o_0ps написав:
Lordie написав:

o_0ps, це лише свідчить що і ви, і ваша ORM анічогісінько не шарять у зарезервованих словах SQL. І це сумно.

А цей ваш пост що свідчить? Я чудово розбираюся в SQL так що не потрібно просто так щось говорити, а якщо не можите допомогти, то краще не писата, вот моя порада... А то щось дуже багато розумників появилося з яких толку 0. Моя ORM? Ви хоть знаєте що таке Doctrine ORM?
Якби я будував запит до бд, то тоді розумію що я наплужив, але ж будує запит дотрина, і чого синтаксична помилка незрозуміло...

Якщо ви так чудово "розбираєтесь в sql" то от самі і розбирайтесь!
І непотрібно тут ображати інших користувачів!

А ви як завжди дуже корисні, що в попередній темі http://replace.org.ua/topic/4980/, що в цій...
P.S. Зайшли, придерлися до слова і офф. Стабільність тоже хороша риса  :)

11

(28 відповідей, залишених у PHP)

Lordie написав:

o_0ps, боюсь що не лише знаю, але й використовував ще... ви вгадали, за царя Гороха як земля була пласка. Якщо виділене жирним у повідомленні пана CrazyFreeMan вам нічого не говорить і ви не бачите в цьому біди - я б не був так певен що ви "чудово розбираєтесь в SQL".
Але про всяк випадок дам підказку... у SQL справді зустрічається слово ORDER. Можливо, ви просто з ним не стикались... втім, не уявляю як.

Доречі, вибачайте що наїхав, просто сесія, завтра екзамен, а ще з сайтом робота затягується, вот і зірвався)

12

(28 відповідей, залишених у PHP)

Дякую ще раз.
Тема закрита.

13

(28 відповідей, залишених у PHP)

Блін, найбільш дивно те, що таблицю то воно створило, просто спілкуватися з нею не хотіло, переважно якщо імя зарезервоване, то його навіть при створенні таблиці використати не можна, бо помилка буде, а тут норм... -.-

14

(28 відповідей, залишених у PHP)

Lordie написав:

Click.

Дякую, просто ніколи не зустрічався з зарезервованими назвами таблиць в MySQL

15

(28 відповідей, залишених у PHP)

Lordie написав:

o_0ps, боюсь що не лише знаю, але й використовував ще... ви вгадали, за царя Гороха як земля була пласка. Якщо виділене жирним у повідомленні пана CrazyFreeMan вам нічого не говорить і ви не бачите в цьому біди - я б не був так певен що ви "чудово розбираєтесь в SQL".
Але про всяк випадок дам підказку... у SQL справді зустрічається слово ORDER. Можливо, ви просто з ним не стикались... втім, не уявляю як.

Тобто order зарезервоване імя?
( Я знаю що таке order (сортування ), просто не думав що не можна створювати таблиці з такою назвою)
P.S Я з цим не зустрічався тому що я тільки навчаюся програмуванню, до того ж сам, і допогти нікому, так і приходиться розбиратися з помилками самому... А досвіду мало, бо вчу PHP близько

16

(28 відповідей, залишених у PHP)

Lordie написав:

o_0ps, це лише свідчить що і ви, і ваша ORM анічогісінько не шарять у зарезервованих словах SQL. І це сумно.

А цей ваш пост що свідчить? Я чудово розбираюся в SQL так що не потрібно просто так щось говорити, а якщо не можите допомогти, то краще не писата, вот моя порада... А то щось дуже багато розумників появилося з яких толку 0. Моя ORM? Ви хоть знаєте що таке Doctrine ORM?
Якби я будував запит до бд, то тоді розумію що я наплужив, але ж будує запит дотрина, і чого синтаксична помилка незрозуміло...

17

(28 відповідей, залишених у PHP)

CrazyFreeMan написав:

Який запит виконуєте?
Що це 'order (name, mail, text) VALUES ('dgrrger', 'vdsvs@eger.ua', '67u76u67ut')'  ? Особливо перше слово в помилці

Я ніякі SQL запити не виконую, я використовую її інтерфейс, а запит ось тут:

$objectManager = $this->getServiceLocator()->get(static::ENTITY_MANAGER);
                $entityPatch = static::ENTITY_PATCH;
                $order = new $entityPatch();
                $order->exchangeArray($form->getData());
                $objectManager->persist($order);
                $objectManager->flush();

І прикол в тому, що в запиті помилок неможе бути, адже я використовую тільки інтерфейс Doctrine ORM, а не DQL,
і аналогічні запити я використовую завжди, і завжди працює, а тут ....

18

(28 відповідей, залишених у PHP)

Народ, виникла проблема яка мене вже *$@% ... допекла...
Вот помилка:

Doctrine\DBAL\DBALException
File:
C:\xampp\htdocs\o0ps.ua\www\vendor\doctrine\dbal\lib\Doctrine\DBAL\DBALException.php:47
Message:
An exception occurred while executing 'INSERT INTO order (name, mail, text) VALUES (?, ?, ?)' with params ["dgrrger", "vdsvs@eger.ua", "67u76u67ut"]:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order (name, mail, text) VALUES ('dgrrger', 'vdsvs@eger.ua', '67u76u67ut')' at line 1
PDOException
File:
C:\xampp\htdocs\o0ps.ua\www\vendor\doctrine\dbal\lib\Doctrine\DBAL\Statement.php:138
Message:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order (name, mail, text) VALUES ('dgrrger', 'vdsvs@eger.ua', '67u76u67ut')' at line 1

Вот Entity:

<?php

namespace Portfolio\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 *
 * @ORM\Entity
 * @ORM\Table(name="order")
 */
class Order
{
    /**
     * @var int
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;
    /**
     * @var string
     * @ORM\Column(type="string", length=255, nullable=false)
     */
    protected $name;
    /**
     * @var mail
     * @ORM\Column(type="text")
     */
    protected $mail;
    /**
     * @var text
     * @ORM\Column(type="text")
     */
    protected $text;

    /**
     * Get id.
     *
     * @return int
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * Set id.
     *
     * @param int $id
     *
     * @return void
     */
    public function setId($id)
    {
        $this->id = (int)$id;
    }

    /**
     * Get name.
     *
     * @return string
     */
    public function getName()
    {
        return $this->name;
    }

    /**
     * Set name.
     *
     * @param string $name
     *
     * @return void
     */
    public function setName($name)
    {
        $this->name = $name;
    }

    /**
     * Get mail.
     *
     * @return string
     */
    public function getMail()
    {
        return $this->mail;
    }

    /**
     * Set mail.
     *
     * @param string $mail
     *
     * @return void
     */
    public function setMail($mail)
    {
        $this->mail = $mail;
    }

    /**
     * Get text.
     *
     * @return string
     */
    public function getText()
    {
        return $this->text;
    }

    /**
     * Set text.
     *
     * @param string $text
     *
     * @return void
     */
    public function setText($text)
    {
        $this->text = $text;
    }

    /**
     * Helper function.
     */
    public function exchangeArray($data)
    {
        foreach ($data as $key => $val) {
            if (property_exists($this, $key)) {
                $this->$key = ($val !== null) ? $val : null;
            }
        }
    }

    /**
     * Helper function
     */
    public function getArrayCopy()
    {
        return get_object_vars($this);
    }
}

Контроллер:

<?php

namespace Portfolio\Controller;


use Zend\Mvc\Controller\AbstractActionController;
use Zend\View\Model\ViewModel;

class OrderController extends AbstractActionController
{
    const ENTITY_MANAGER = 'Doctrine\ORM\EntityManager';
    const ENTITY_PATCH = '\Portfolio\Entity\Order';
    const ORDER_FORM = '\Portfolio\Form\OrderForm';
    const ORDER_FILTER = '\Portfolio\Form\OrderFilter';

    const ROUTE_AFTER_INDEX = 'home';
    const ROUTE_AFTER_ADD = 'home';

    const ORDER_IS_NOT_EXISTS = 'Файл не знайдено';
    const ERROR = 'Невідома помилка. Попробуйте ще раз';
    const ERROR_INVALID_FORM = 'Форма неправильно заповнена. Попробуйте ще раз';

    /**
     * @var OrderForm
     */
    public $OrderForm;

    /**
     * @return array|\Zend\Http\Response
     */
    public function indexAction()
    {
        return $this->redirect()->toRoute(static::ROUTE_AFTER_INDEX);
    }

    /**
     * @return \Zend\Http\Response|ViewModel
     */
    public function addAction()
    {
        $form = $this->getOrderForm();
        $request = $this->getRequest();
        if ($request->isPost()) {
            $data = $request->getPost()->toArray();
            $form->setData($data);
            if ($form->isValid()) {
                $objectManager = $this->getServiceLocator()->get(static::ENTITY_MANAGER);
                $entityPatch = static::ENTITY_PATCH;
                $order = new $entityPatch();
                $order->exchangeArray($form->getData());
                $objectManager->persist($order);
                $objectManager->flush();
                return $this->redirect()->toRoute(static::ROUTE_AFTER_ADD);
            } else {
                return new ViewModel(array(
                    'error' => static::ERROR_INVALID_FORM,
                    'form' => $form
                ));
            }

        }
        return new ViewModel(array(
            'form' => $form
        ));
    }

    /**
     * @return UploadFilterForm|\Portfolio\Form\FileUploadForm
     */
    public function getOrderForm()
    {
        if (!$this->OrderForm) {
            $orderForm = static::ORDER_FORM;
            $orderFilter = static::ORDER_FILTER;
            $this->OrderForm = new $orderForm();
            $this->OrderForm->setInputFilter(new $orderFilter());
        }
        return $this->OrderForm;
    }
}

module.config:

...
'doctrine' => array(
        'driver' => array(
            'portfolio_entity' => array(
                'class' =>'Doctrine\ORM\Mapping\Driver\AnnotationDriver',
                'paths' => array(__DIR__ . '/../src/Portfolio/Entity')
            ),
            'orm_default' => array(
                'drivers' => array(
                    'Portfolio\Entity' => 'portfolio_entity',
                )
            )
        )
    )
...

А це БД:

http://replace.org.ua/misc.php?action=pun_attachment&amp;item=904&amp;download=0

А весь прикол в тому, що в цьому самому модулі є інший enity для роботи з портфоліо і він пашить чудово...
В чому проблема?

19

(11 відповідей, залишених у PHP)

Betterthanyou написав:

В мене була інша ідея
на сторінці де є реклама все просто тут можна знайти href і скопіювати від першої лапки до другої і додати назву сайту

<td align='center'>173160</td>
                <td><a href='index.php?cf=mail-readpmail&mid=173160'>Работа на дому. Доход от 500 у.е.!</a></td>
                <td align=center>0.0008</td>
                <td align=center>16.06.2015</td>
                <td align=center><a href='index.php?cf=mail-deletemail&sid=1005976280' onclick='if (!confirm("Вы уверены, что хотите удалить непрочитанное письмо?"))return false;'><img src='img/deletecr.gif' alt='Удалить письмо' width='16' height='16' border='0'></td>
            </tr>
<tr class="col2">
                <td align='center'>173161</td>
                <td><a href='index.php?cf=mail-readpmail&mid=173161'>ДОМАШНИЙ БАНК НА КОМПЬЮТЕРЕ</a></td>
                <td align=center>0.0008</td>
                <td align=center>16.06.2015</td>
                <td align=center><a href='index.php?cf=mail-deletemail&sid=1006044579' onclick='if (!confirm("Вы уверены, что хотите удалить непрочитанное письмо?"))return false;'><img src='img/deletecr.gif' alt='Удалить письмо' width='16' height='16' border='0'></td>
            </tr>
<tr >
                <td align='center'>173164</td>
                <td><a href='index.php?cf=mail-readpmail&mid=173164'>ЛЕГАЛЬНЫЙ  ЗАРАБОТОК  В ИНТЕРНЕТЕ!!!</a></td>
                <td align=center>0.0008</td>
                <td align=center>16.06.2015</td>
                <td align=center><a href='index.php?cf=mail-deletemail&sid=1006066504' onclick='if (!confirm("Вы уверены, что хотите удалить непрочитанное письмо?"))return false;'><img src='img/deletecr.gif' alt='Удалить письмо' width='16' height='16' border='0'></td>

тут теж можна легко сформувати посилання

var w2DM974="5e3b5f3";document.writeln("<a href='index.php?cf=pmail-readm&uid="+(2466673-21)+"&mid="+(173105+55)+"&rnd=505f8cbf28fde"+w2DM974+"d2769a68cf11' class='blue' target='_blank'>http://www.inet-dengi.net/?accaae950755a4852f42ab8270d04002</a>");

а тут навіть формувати нічого не потрібно все є в sURL почекати 1 хвилину (можливо на сервері теж читає) ось і все

<!-- 
document.oncontextmenu = function(){alert("© 2004-2015 WMmail.ru. All rights reserved.");return false;}
var sURL = 'index.php?cf=pmail-frm2&uid=2466652&mid=173160&rnd=505f8cbf28fde5e3b5f3d2769a68cf11';
var sTime = 15;

function timer(){
    if (sTime <= 0){
        refresh();
    } else {
        sTime = sTime - 1;
        document.getElementById("seconds").innerHTML = sTime;
        setTimeout( "timer()", 1000); 
    }
}

function refresh(){
    window.location.href = sURL;
}
setTimeout("timer()", 1000); 
//-->

але з авторизацією проблеми там спочатку скрипт дає а потім сторінку.

Що до твоєї ідеї це не настільки вигідно щоб на моєму комп'ютері виконувати, аби це якось з сервера запускати

Так того бота , що я казав можна запустити на халявному дедіку(або на декількох). Проблем з кодом 0, а вот з авторизацією є куча нюансів і в подальшому проблем... Просто я зараз немаю часу розбиратися з кодом, бо в мене сесія, так що вибачай)

20

(11 відповідей, залишених у PHP)

VTrim написав:
o_0ps написав:
Betterthanyou написав:

В мене є такі запитання
Якщо я авторизувався в ручну і в мене є куки я можу перенести їх в зміну $cookie, чи це не допоможе ?
Як скопіювати інформацію з іншого сайту (скриптом PHP) в мою БД, скрипт буде запускатися при допомозі Cron Jobs (автоматично)

Це залежить від сайту, якщо розробник добавить соль + авторизація побудована на сесіях(на всіх сайтах), то кукі тобі нічого не дадуть...

При чому тут сiль?
Пiсля авторизацii сесiя зберiгаэться на серверi,а ii ключ в куках браузеру,тому немаэ рiзницi.

Я про ту соль, щоб перевірити кукі рідні, чи підставлені....