К примеру, у меня есть таблица mysql, где одно поле - это id записи в другой таблице, которое является ссылкой на нее (связи). Код получается следующим:
Options All -ExecCGI -Indexes -Includes +FollowSymLinks
DirectoryIndex index.php
RemoveHandler .xml
AddType application/x-httpd-php .xml
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*) index.php?q=$1 [L]
</IfModule>
но GET переменные пропадают, понимаю, что их можно вытащить через php делением строки на подстроки и т.п., но можно ли как-то изменить правило в .htaccess, чтобы сразу туда шли переменные GET наряду с q ?
именно `field` = `field` + '$value - не может. Транзакции имеют явный конфликт ресурсов и будут сериализованы самой базой данных корректно.
innodb - на блокировке строки
myisam - блокировкой таблицы
А вот если делаете select field, дальше что-то на приложении считается, а потом update set field = newvalue - то тут проблема конкурентного доступа будет.
Да, я вот так и думал, что если `field` = `field` + '$value, то в принципе все ок должно быть. То есть Mysql сам смотрит, что сейчас с этим полем происходит операция, значит надо дождаться окончания операции и обновить поле на основе новых данных? И сам составляет очередь, да?
У меня происходит большое количество обращений к одному полю в одной таблице и в одной записи. Причем обращения не просто посмотреть значение, а изменить его. Источники обращений: разные php скрипты (не один), то есть могут быть параллельные обращения.
Изменение значения происходит следующим стандартным образом:
И я задумался о том, что может получиться несколько одновременных обращений для изменения поля в один момент, и два параллельных потока будут прибавлять к одному значению разные параметры и просто друг друга перепишут, хотя по факту это должны выполниться последовательно.
Собственно вопрос, может ли так случиться? Либо Mysql предусмотрели это уже? Если всё же может, то что делать? Блокировать таблицу, запись, поле или...?
Заранее всем благодарен за любые Ваши ответы.
P.S. модераторы, поменяйте название темы на "Одновременное изменение одной записи в Mysql БД с разных соединений", пожалуйста! Спасибо.
Я бы на твоем месте написал серверную часть на node.js и использовал сокеты. Загугли почитай, ничего сложного нет. Там буквально у тебя пару сотен строк кода будет, если не меньше. При изменении данных можно просто отправлять всем клиентам с сервера новый фрагмент и всю инфу о нем. Это гораздо легче и эффективнее. Делать setInterval на стороне клиента уже не круто и глупо как по мне. Тем более раз в секунду))
вот это и хотелось видеть на скрине
тут скорее непонятно почему вопрос возник
сам же на него и ответил
познай фронт-контроллер
new01 пишет:
Не пойму, почему теги не работают в сообщениях
с таким скрином неважно
лучше бы не показывал
Понял, спасибо! Уже изучаю! (Добавление)
Вообще у меня стоит общая точка входа: то есть все урл запросы идут через index.php, а там сначала подключается две общие библиотеки (для работы на каждой странице), где собственно идет непосредственно запись кук, далее подключается необходимый контроллер и вью в зависимости от страницы. Добавил аргумент путь "/" при записе кук и всё.
[quote=LIME][/quote]
[img]https://sun9-61.userapi.com/c858132/v858132695/c009f/0ZYTRmJ5tCY.jpg[/img]
Название - одно
Контент - один
Домен - один
Путь - разный (типа /user, /settings и т.п.)
Создано и срок действия - разный (Добавление)
Не пойму, почему теги не работают в сообщениях
Но возникает следующая проблема, в хроме смотрю и там по 5-6 дублей этих переменных. То есть названия и значения такие же, разные только даты создания и окончания переменных. Вроде как же должно просто перезаписываться в эту же переменную, а вместо этого создается новая с таким же названием. Что-то изменилось? Помогите, пожалуйста.
но при выводе переменной $game['num'] я получаю значение 0.60177372233011 ВМЕСТО 0.6017737223301083, то есть либо PHP, либо MongoDB округляет это число.
Вопрос:
Как получить исходное число без округления?
Такая проблема. Скрипт обрабатывает два запроса:
1. domain.com/search/дом
2. domain.com/search/%E4%EE%EC
Причем, где %E4%EE%EC=urlencode("дом").
Из-за этого в индексе получается две страницы с одинаковым контентом, но разным для ПС адресом. Возможно ли это как-то избежать? К примеру, перенаправление с одной версии на более приоритетную.
Такая проблема.
В файле .htaccess стоит такой шаблон:
RewriteRule ^search/(.*)$ /?search=$1 [QSA,L,NE,NC]
Когда на вход идёт domain.com/search/Dimitri Vegas & Like Mike Feat. Ne-Yo - Higher Place
Берём из $_GET['search'] значение, и он выводит "Dimitri Vegas", ВМЕСТО "Dimitri Vegas & Like Mike Feat. Ne-Yo - Higher Place". Как исправить, чтобы получал полное значение?
Заранее всем спасибо! (Добавление)
Прошу прощения, тему можно закрыть.