Параметри пошуку (Сторінка 3 з 5)
Ласкаво просимо!
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Теми користувача savelikan Виконати пошук
Знайдені повідомлення: з 41 по 60 з 97
Він має бути унікальний на всю базу даних, так?
fk_address - де воно взялося тут? І для чого воно?
звичайно, що працює
Аааа ось, знайшов!
CREATE TABLE IF NOT EXISTS `pages` (
`pages_id` int(11) NOT NULL AUTO_INCREMENT,
`pages_address` int(11) NULL,
`pages_type` int(11) NOT NULL,
`pages_user` int(11) NOT NULL,
`pages_date` int(11) NOT NULL,
`pages_update` int(11) NOT NULL,
`pages_title` varchar(200) NOT NULL,
`pages_text` text NOT NULL,
PRIMARY KEY (`pages_id`),
CONSTRAINT `fk_address` FOREIGN KEY `fk_address` (`pages_address`)
REFERENCES `pages` (`pages_id`)
ON DELETE CASCADE
) ENGINE=InnoDB;
ktretyak написав:Що ви маєте на увазі "видаляються дочірні елементи", якщо ви кажете що це все робиться в одній таблиці?
Наприклад, додаєш запис А, до нього дочірніми записи Б і В
при видаленні в таблиці запису А автоматично видаляються записи Б і В
ktretyak написав:Те, що вам потрібно, називається "зовнішні ключі" або "foreign key". Для новачків це не проста тема, але головне правило при роботі із зовнішніми ключами: не створювати таблицю, поля якої посилаються на неіснуючу таблицю... хоча це я сходу згадав це правило, а там здається ще знайдете щось непросте...
А для того щоб видалялись поля в одній таблиці і автоматично це робилось в іншій, то дивіться у вашому редакторі SQL згадування про каскадність
та я колись таке робив, воно все в одній таблиці - видаляєш батьківський запис - видаляються всі дочірні. от тільки ніде не можу знайти це 
Привіт усім!
Мені потрібно створити деревоподібну структуру таблиці в SQL. Хочу реалізувати категорії, підкатегорії і т.д на сайті, щоб при видаленні категорії видалялися всі підкатегорії. Як правильно побудувати цей запит, щоб створити таку таблицю?
Необхідні поля:
id
parrent_id
type - тип, категорія чи власне текст статті
title - заголовок
text - опис
Наперед дякую
VTrim написав:Тоді можна ще так.
function foo() { return ['foo'=>'foo1', 'bar'=>'bar2', 'baz'=>'baz3']; }
extract(foo());
echo $foo, $bar, $baz;
Але скрипт з ООП працює повільніше, ніж звичайне?
ktretyak написав:savelikan написав:та я щось ніяк не можу зрозуміти це ООП і в яких випадках і як правильно його використовувати на практиці
Ось це розуміння потреби використання ООП, якраз дуже близько стосується теми "області видимості".
Як правило новачкам не зрозуміло для чого воно, бо вони роблять якісь досить маленькі проекти щоб заплутатись в них. ООП просто додатково розділяє області видимості для випадку, коли у вас є великий проект.
Грубо кажучи, область видимості повинна приблизно дорівнювати області видимості програмістом свого проекту в певній функції, яку він програмує.
ну наприклад при написанні сторінки реєстрації користувачів, активації їх сторінки і авторизації де ООП може пригодитися?
ktretyak написав:Для чого взагалі області видимості? - Для того щоб не плутатись у вашому коді.
Важко заплутатись у 10-ти рядках коду, але дуже легко це зробити, якщо ваш код, скажімо, хоча б не вміщається на одному екрані монітора. Бо дуже часто програміст в своїй роботі використовує звичні для нього імена змінних.
З появою ООП у PHP, ще більше додалось областей видимості, і все це робиться для тієї ж самої мети - не плутати змінні, які виконують різні призначення, але мають однакові імена.
Свого часу я точно так само як і ви хотів щоб все кругом було доступно. Але все ж необхідно приділити час для вивчення областей видимості, це варте того.
та я щось ніяк не можу зрозуміти це ООП і в яких випадках і як правильно його використовувати на практиці
Привіт усім!
function abc(){
$a = 'text_1';
$b = 'text_2';
}
як заставити $a и $b бути доступними за межами функції? Я робив ось так:
function abc(){
$return['a'] = 'text_1';
$return['b'] = 'text_2';
RETURN $return;
}
$temp = function abc();
$a = $temp['a'];
$b = $temp['b'];
може є простіший спосіб?
Djalin написав:http://тестування.укр/users/
Forbidden
You don't have permission to access /users/ on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Apache/2.2.26 (Unix) mod_ssl/2.2.26 OpenSSL/1.0.1e-fips mod_bwlimited/1.4 Server at xn--80adi8aaufcj8j.xn--j1amh Port 80
я усе розумію, але нащо це показувати усім?
Вже давно оновив)
VTrim написав:Тоді краще записуйте кількість постів на форумі у таблицю самого користувача.
Наприклад є таблиця users і є колонка forum_posts і в ній (через скрипт) при додаванні/видаленні повідомленяя на форумі оновлюйте її значення на +1/-1
Тоді для CRON'у просто виводьте інформацію по користувачам,типу
SELECT forum_posts FROM users
так і є
Якщо я адмін, і видаляю цілу тему, тоді всім користувачам, які писали в тему треба перерахувати к-сть повідомлень. Я заганяю ід користувача, який написав у массив, потім видаляю ІД користувачів, які повторюються і оновлюю їм к-сть повідомлень
SELECT `u`.`users_id` , (
SELECT COUNT( `forum_posts-id` )
FROM `forum_posts`
WHERE `forum_posts`.`forum_posts-user` = `u`.`users_id`
) AS posts
FROM `users` `u`
WHERE `u`.`users_id`
так буде правильно?
koala написав:SELECT `forum_posts`, COUNT(`forum_posts`)
FROM `forum_posts`
GROUP BY `forum_posts`
WHERE `forum_posts-users` IN (8,25,9,5)
Здається, так.
тоді в результаті один рядочок, де forum_posts-users=8 а решта ігнорує
yarko написав:Використайте COUNT
Я знаю, що COUNT рахує к-сть записів. Але як підрахувати к-сть записів для кожного користувача?
Я може запроста це зробити: запит в циклі FOREACH, але так неправильно.
Привіт усім!
SELECT *
FROM `forum_posts`
WHERE `forum_posts-users` IN (8,25,9,5)
Чи можливо дізнатися, скільки знайдено рядочків для кожного користувача? Це я пишу для CRON, щоб щоночі перераховував к-сть повідомлень кожного користувача на форумі)
Може якось через GROUP BY?
Буду вдячний за відповідь.
Привіт усім! Хотів запитати, чи можливо перевірити чи виконався запит mysql_query("DELETE.... UPDATE...."). Тобто чи немає помилки в самому запиті незалежно від того чи були видалені (оновлені) записи чи ні?
Крім or die()
Vo_Vik написав:Попробуйте в ручну добавити до урл хеш таг і переконайтесь що браузер його зігнорує, бо то та сама сторінка,
Рішення з випадковим додатковим параметром хороше. Також можете спробувати щось таке:
if (window.location.hash) {
location.hash = window.location.hash;
}
та от в тому і проблема, що бравзер ігнорує... А як заставити його оновити сторінку незалежно від того яка сторінка?
А це випадкові числа щоб адреса сторінки відрізнялася?
Така сама ситуація
Я знахожуся на сторінці http://newsite.ua/forum/t-32.html?page=1
після того, як я додаю перше повідомлення - все працює, воно перевантаує сторінку на адресу:
http://newsite.ua/forum/t-32.html?page=1#75
Якщо знову додати повідомлення - сторінка не оновлюється
Тако. Є форма з додаванням нового повідомлення. Відправляє ajax запит з новим повідомленням і у відповідь одержує адресу сторінки з новим повідомленням. ВОна може бути така ж сама, якщо повідомлення буде на тій же сторінці, а може бути інша, якщо повідомлень на сторінці більше 20. Так от, коли додати повідомлення вперше, воно переходить на сторінку. Коли зробити це вдруге - воно додає повідомлення в базу даних проте не переходить, бо сторінка одна і та ж, просто # різне. МЕні потрібно примусити бравзер переходити на сторінку, або оновлювати її при необхідності
Знайдені повідомлення: з 41 по 60 з 97