LINUX.ORG.RU

Сообщения Razip

 

Передача экземпляра PDO в родитель модели MVC

Форум — Web-development

Приветствую. Уже который день ломаю голову как передать экземпляр PDO в родитель модели (чтобы все потомки имели методы для работы с БД, которые, основываются на экземпляре PDO). Был такой вариант:

Не переопределять конструктор в дочерней модели (он унаследуется) и передавать экземпляр PDO в дочернюю аргументом (родительский конструктор будет записывать экземпляр в свойство).

Итог: все вроде бы хорошо, но в моей системе, модель в виде ORM (создается экземпляр в контроллере). В этом случае, нужно, передавать объект подключения из свойства контроллера в конструктор модели (вручную!).

А чтобы экземпляр PDO был в свойстве контроллера нужно:

1) Передавать объект подключения в необходимый контроллер:

$controllerObject = new $controllerName($pdo);

2) При этом, дочерний класс не должен переопределять конструктор родительского контроллера, который записывает экземпляр PDO в свойство:

function __construct($pdo) {
  $this->pdo = $pdo;
}

Какие варианты тут могут быть? Как передается объект подключения в популярных MVC CMS и CMF? Заранее благодарю! :)

 ,

Razip
()

Вставить название класса в путь пространства имен (PHP)

Форум — Web-development
$controllerObject = new \system\controllers\/*как сюда вставить название класса из свойства?*/();
//Само свойство
$router->controllerName;

Буду очень благодарен.

 

Razip
()

Не открываются сайты с доменом .com

Форум — General

Приветствую. Не открываются сайты с доменом .com. Теребил поддержку провайдера — говорят что все должно работать. Действительно, вставил SIM-карту(речь идет о USB-модеме) в телефон и сайты открываются. Отсюда можно уловить то, что что-то у меня на компьютере не позволяет им открываться. В какую сторону посоветуете копать? (Kubuntu)

Razip
()

JS. Необходимо избежать использование замыкания

Форум — Web-development
$('#jquery_jplayer_' + last_index).onProgressChange(function(loadPercent, playedPercentRelative, playedPercentAbsolute, playedTime, totalTime) {
//Некий код
});

Мне необходимо вызвать нужную функцию с аргументами, которые плагин передает в анонимную функцию. Если сделать вызов нужной функции, то она будет вызвана, но аргументы не будут переданы (плагин передает только в анонимную функцию). Вызов нужной функции в замыкании невозможен, ибо эта функция там неопределенна. Что посоветуете?

Заранее благодарю.

 

Razip
()

Модем ZTE MF667 3G-only

Форум — Linux-hardware

Здравствуйте! Имеется модем ZTE MF667. Из-за того что часто пропадает/появляется сигнал 3G, модем, постоянно отключается/подключается (переходит на 2G и наоборот). Это осуществляется на аппаратном уровне (вещь хорошая, но не для меня к сожалению). Я так понял что можно перевести модем в 3G-only, но через программу провайдера, которая конечно же линупс не поддерживает (кстати через Wine тоже фиг запустишь). В общем суть вопроса - посоветуйте программу которая сможет распознать модем и перевести его в 3G-only. (NM кстати распознает модем как провод eth, был бы как модем - можно было бы там же настроить диапазон работы)

Razip
()

Не загружается ОС

Форум — General

Собственно сабж, в какую строну копать? Единственное что могу предоставить, так это фото монитора при загрузке с ошибкой. Ногами сильно не пинать. (=

http://i58.fastpic.ru/big/2013/1030/6a/cd8a6839a315909c16e028cfcea0936a.jpg

Razip
()

PDO prepare

Форум — Web-development

Приветствую. Не добавляется запись в БД. Источник всего зла — переменная $time, т.е. если поставить заместо нее 0 или time() (в execute) то запись добавиться. Проверил var_dump'ом эту переменную — int. Самое интересное, что если попробовать добавить запись из PHPMyAdmin то все проходит успешно. Вот такие дела. Буду благодарен за помощь!

$time = $_SERVER['REQUEST_TIME'] + $ban_time;
$prepare = $this->database->prepare("INSERT INTO `ban_list`(`user_id`,`id`,`time`) VALUES(?, NULL, ?)");
$prepare->execute(array($user_id, $time));

 ,

Razip
()

Нет изображения

Форум — Linux-hardware

Приветствую. Столкнулся с проблемой, при которой на монитор не идет изображение. Монитор исправен, кабель от него не поврежден. Были случаи зависания всех устройств (даже индикаторы на клавиатуре, музыка играла на одном месте). В железе ноль, нужна помощь. Благодарю.

 

Razip
()

Ругань udev

Форум — General

Если нажать Esc при загрузке системы, то появиться терминал, в нем выводится следующее:

http://s1.ipicture.ru/uploads/20130907/SzBfRuJY.jpg

Если же не открывать терминал, то можно увидеть следующий текст: «Дисковод /tmp не готов или отсутствует».

Что это может значить? Как решить проблему?

 ,

Razip
()

Вопрос по терминалу и не только

Форум — General

Здравствуйте. Я столкнулся с проблемой, при которой не видно текста в терминале (не путать с эмулятором терминала), не видно индикатора загрузки дистрибутива. Когда компьютер включаю после аварийного выключения, то появляется текстовый индикатор, и видно текст в терминале (с большим размером шрифта). В чем может быть проблема?

И да, ещё один вопрос. При выключении компьютера/включении (если нажать Esc) там выводится список. И есть один пункт — «Jetty is not installed» (если не ошибаюсь). Я так понимаю это тоже какая-то проблема.

Буду благодарен за помощь!

Razip
()

Получение выделенного текста в textarea (JS/jQuery)

Форум — Web-development

Приветствую. Суть темы в заглавие. Заранее спасибо за помощь.

 ,

Razip
()

Вывод записей из БД

Форум — Web-development

В таблице есть колонка id, если не ошибаюсь это - ключ, задача: вывести первые 35 записей с конца (отсортировав через id), но так, чтобы последняя из этих 35 записей была внизу, а первая вверху.

SELECT * FROM messages WHERE room = '$room' ORDER BY `id` DESC LIMIT 0 , 35

Вот если бы записи выводимые этим кодов отразить зеркально, то будет самое то.

 

Razip
()

Сессии

Форум — Web-development

Однажды переделал свой кривой логин на сайт, с кук на сессии. Вроде бы все работало прекрасно, но вот в один прекрасный день при логине на сайт, не открывался профиль а оставалась форма входа (заметьте, что сессия в куках создается). Я не думаю что проблема в профиле или в других скриптах использующих сессии (они проверяют наличие переменной login в сессии и проверяют его значение «1»). Т.к. натворить в 3 скриптах сразу я не мог. Уже день не могу решить проблему, перепробовал массу вариантов. Тут без помощи ЛОРа не обойтись. Зарание спасибо! :)

Собсна сам код входа на сайт:

session_start();
$root_dir = "{$_SERVER['DOCUMENT_ROOT']}/";
$username = $_POST["username"];
$hash_password = hash ('md5',$_POST["password"]);
$hash_password = hash ('md5',$hash_password);
$hash_password = hash ('md5',$hash_password);
include ($root_dir."engine/db.php");
$user = mysql_query ("SELECT * FROM users WHERE username = '$username'");
mysql_close();
$user_find = mysql_num_rows($user);
if ($user_find == 1) {
while ($row = mysql_fetch_array($user)) {
$db_password = $row["password"];
$id = $row["id"];
$admin = $row["admin"];
}
if ($hash_password == $db_password) {
$_SESSION["login"] = "1";
$_SESSION["id"] = $id;
$_SESSION["username"] = $username;
$_SESSION["admin"] = $admin;
echo "login";
}
else {
echo "error_password";
}
}
else {
echo "error_login";
}

 ,

Razip
()

Куки (PHP)

Форум — Web-development
<?php
if ($_COOKIES["login"] == 1) {
$root_dir = "{$_SERVER['DOCUMENT_ROOT']}/";
$profile_tpl = file_get_contents($root_dir."themes/standart/profile.tpl");
$user_id = $_COOKIES["user_id"];
include ($root_dir."engine/db.php");
$get_username = mysql_query ("SELECT * FROM users WHERE id = '$user_id'");
mysql_close();
while ($row = mysql_fetch_array($get_username)) {
$username = $row["username"];	
}
$str_search = array(
"{username}"
);
$str_replace = array(
"$username"
);
$profile = str_replace($str_search, $str_replace, $profile_tpl);
}
else {
$profile = file_get_contents($root_dir."themes/standart/login_form.tpl");
}
?>

Есть вот такое условие. Если содержание куки login = 1, то выводится профиль, если 0 то форма входа. Однако когда есть кука login со значением 1, по прежнему выводится форма входа. Помогите разобраться.

 ,

Razip
()

innerHTML и textarea

Форум — Web-development
function insert(qname,text) {
if (text != "") {
var txt = "[quote="+qname+"]"+text+"[/quote]";
alert(txt);
// document.getElementById('msg').innerHTML += txt;
}
else
{
alert('Выделите текст для цитирования');
}
}

Значит то что я закомментировал — не работает, то есть текст в <textarea> не добавляется, однако alert(txt) работает нормально. В чем может быть проблема?

 

Razip
()

Помогите найти ошибку (PHP)

Форум — Web-development
while ($row = mysql_fetch_array($get_messages)) {
if ($row["guest"] == "true") {
$guest = 'style="background: #d4d2cb;"';
$who = "user_gray";
$group = "Анонимный пользователь";
}
else {
$author = $row["author"];
include ($root_dir."engine/db.php");
$get_user = mysql_query ("SELECT * FROM users WHERE username = '$author'");
mysql_close();
while ($row = mysql_fetch_array($get_user)) {
$admin = $row["admin"];
}
if ($admin != "true") {
$guest = '';	
$who = "user_green";
$group = "Пользователь";	
}
else {
$guest = '';	
$who = "user_orange";
$group = "Администратор";
}
}
$str_search = array(
"{guest}",
"{author}",
"{content}",
"{id}",
"{who}",
"{group}"
);
$str_replace = array(
$guest,
$row["author"],
$row["message"],
$row["id"],
$who,
$group
);
$messages .= str_replace($str_search, $str_replace, $message_tpl);
}

Есть значит такой код. Суть его вот в чем: если юзер не анонимус, то в БД идет запрос на получение содержимого колонки «admin», далее идет условие, если пользователь — админ, то значения переменных одни, если это простой пользователь то другие. Проблема заключается в том, что — условие

if ($admin != "true")
не правильно срабатывает, то есть выводится всегда значения переменных для Администратора, к тому же не выводится значения:
$row["author"],
$row["message"],
$row["id"],
У анонимусов же все нормально. Буду очень благодарен если поможете.

P.S. Значения колонки «admin» из БД выводятся нормально через

echo $admin;

 

Razip
()

Массивы в PHP

Форум — Web-development
$str_search = array(
"{guest}",
"{author}",
"{id}",
"{who}"
);
$str_replace = array(
"$guest",
"$row['author']",
"$row['id']",
"$row['who']"
);

В общем в коде моем закралась ошибка, я думаю что скорее всего в массиве, а именно во втором, вопрос следующий: можно ли так записывать данные в массив? Если так нельзя, то каким способом можно?

 ,

Razip
()

Вопрос по Mod Rewrite

Форум — Web-development

Есть такой url со следующими переменными: /?p=x&c=y, мне нужно сделать такой url: /category/y/x. Кто подскажет как это реализовать?

 ,

Razip
()

Вывод данных из массива (PHP)

Форум — Web-development
<?php
include ('/var/www/engine/db.php');
$pages = mysql_query ("SELECT * FROM pages");
mysql_close();
while ($row = mysql_fetch_array($pages)) {
echo '<a href="/page/' .$row["short_url"]. '">' .$row["name"]. '</a><br>';
}
?>

В общем есть такой скриптец, он позволяет выводить список всех страниц сайта из БД. Мне нужно неким образом вывести результат выполнения цикла в переменную $all_pages, ибо если echo использовать то выводит инфу из массива выше шаблона. Буду очень благодарен за помощь! :)

 

Razip
()

Запуск Mount&Blade под вином

Форум — Games

Решил погонять в сабж под вином. Скачал. Запускается и после просмотра видео или нажатии на Esc игра тормозит, то есть никаких реакций, курсора нет, нет меню, ничего. Закрывается только после нажатия Alt+F4. Пробовал устанавилвать через PlayOnLinux, слишком многое тянет, мой интернет не осилит, и быть может большинство из этого не нужно. В общем вопрос: кто пробовал запускать прямо через Wine? И что для этой игры скачивали через Winetricks?

 

Razip
()

RSS подписка на новые темы