Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: как 2 работающих скрипта могут обяться между собой
Покинул форум
Сообщений всего: 282
Дата рег-ции: Янв. 2008
Помог: 0 раз(а)
всем пиве,
сеть 2 работающих скрипта претроложим они работают 2 мин.,
как сделать так чтобы один мог чтонибуть передать другому,
напимер какую нибуть переменную, вариант с файтами отпадает,
т. к. одновременная работа с одним файлом врятли получится.
RomAndry
Отправлено: 24 Мая, 2008 - 13:50:08
Частый посетитель
Покинул форум
Сообщений всего: 913
Дата рег-ции: Янв. 2008
Покинул форум
Сообщений всего: 423
Дата рег-ции: Март 2007
Помог: 0 раз(а)
ну... одновременная работа вполне получится, главное файл на долго не задерживать.
как я понимаю, скртипты вы запускаете кроном, тогда решение это:
1. через файл
2. через файл в RAM (многие хостеры под Linux-ом делают /tmp не на диске а в памяти)
3. memcached
----- Тамбовский каджит тебе товарищ
scuter
Отправлено: 26 Мая, 2008 - 19:19:47
Посетитель
Покинул форум
Сообщений всего: 282
Дата рег-ции: Янв. 2008
Помог: 0 раз(а)
Цитата:
ну... одновременная работа вполне получится, главное файл на долго не задерживать.
как я понимаю, скртипты вы запускаете кроном, тогда решение это:
1. через файл
2. через файл в RAM (многие хостеры под Linux-ом делают /tmp не на диске а в памяти)
3. memcached
как раз в этом то вся и проблема,
через файл вариант отпадает так как 2 скрипта могут одновременно записывать один и тот же файл(соответственно информация теряется,
через RAM файлы тоже отпадает по той же причине,
а для memcached нужен отдельный сервер или что то в этом роде,
соответственно на серверах такое дело отсутствует к сожалению.
если бы всё было бы так просто наверное вопроса бы такого и не возникало.
EuGen
Отправлено: 26 Мая, 2008 - 19:36:22
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Можно записывать что-то в БД. Если она есть, конечно. Вообще, потребуется некий сторонний интерфейс общения между ними, БД - как пример.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
Джур
Отправлено: 26 Мая, 2008 - 23:25:24
Посетитель
Покинул форум
Сообщений всего: 423
Дата рег-ции: Март 2007
Помог: 0 раз(а)
вот как. удивлен. А как же блокировка файла? второй скрипт, хочет он того или нет, будет ждать, когда файл освободится.
Если в вашей системе блокировка файлов по какой-то причине не работает, что весьма сомнительно, тогда можно воспользоватся переименовыванием файла, как ни крути а переименовывание файла в РНР, процедура атомарная.
подробней в: "РНР5 в подлинике"
кстати, если база mysql 4.* а таблички myisam, то можно нарватся на колизию.
----- Тамбовский каджит тебе товарищ
EuGen
Отправлено: 27 Мая, 2008 - 09:24:35
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
mysql5+InnoDB
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
scuter
Отправлено: 27 Мая, 2008 - 18:47:26
Посетитель
Покинул форум
Сообщений всего: 282
Дата рег-ции: Янв. 2008
Помог: 0 раз(а)
да вот когда используешь db например mysql
то всё на много лучше предстоит, но тут я столкнулся с некой проблемой,
некоторые данные просто не проходять так как надо екранизировать кавычки,
но когда я их экранизирую почему то хранится это всё в базе с экранироваными кавычками и выдаётся косяк \" \' примепно так,
что с этим косяком делать пока не знаю.
Джур
Отправлено: 28 Мая, 2008 - 09:59:51
Посетитель
Покинул форум
Сообщений всего: 423
Дата рег-ции: Март 2007
Помог: 0 раз(а)
scuter пишет:
некоторые данные просто не проходять так как надо екранизировать кавычки,
но когда я их экранизирую почему то хранится это всё в базе с экранироваными кавычками и выдаётся косяк \" \' примепно так,
что с этим косяком делать пока не знаю.
1. убейте магические кавычки на всякий случай...
2. юзайте mysql_escape_string() для экранирования
но всё равно галиматья получается
кавычки или переэкранируются или вообще не экранируются.
valenok
Отправлено: 29 Мая, 2008 - 06:53:00
Здесь могла бы быть ваша реклама
Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006 Откуда: Israel
Помог: 3 раз(а)
Цитата:
mysql_escape_string() не желательно использовать,
он не выдерживает большое количество текста,
Это чтото новое придумал ? =)
----- Truly yours, Sasha.
scuter
Отправлено: 29 Мая, 2008 - 17:25:47
Посетитель
Покинул форум
Сообщений всего: 282
Дата рег-ции: Янв. 2008
Помог: 0 раз(а)
Цитата:
Это чтото новое придумал ? =)
попробуйте поставить Drupal v6,
и поставьте несколько модулей,
как только вы их активируете, появиться ошибка,
точно воспроизвести не могу, но там будет написано что функция mysql_escape_string
может обработать какое то количество символо о не больше.
valenok
Отправлено: 29 Мая, 2008 - 18:47:46
Здесь могла бы быть ваша реклама
Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006 Откуда: Israel
Помог: 3 раз(а)
Скорее всего в друпал решили что записывать в бд данные в количесве большем чем определённое нельзя. Или php ошибка ? Подозреваю что друпал не такую выдал.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.