Специализированную программу для учета всех своих клиентов, чтобы через пол года не удивляться, чье это барахло у тебя валяется и почему никто не звонит его забрать)
Максимально простое и идеально оптимизированное под задачи компьютерного сервиса есть, учет клиентов компьютерной мастерской как раз для этой цели и разработан, но это онлайн приложение и себе установить не получится.
Учет клиентов компьютерной мастерской разработана на заказ для сервисного центра. Вполне возможно адаптировать код под вашу деятельность, она очень легко модернизируется
slo_nik, спасибо, не стоит беспокойства, кому надо будет зарегистрироваться, найдут почту не на gmail, а кто не захочет, значит не сильно ему и нужна регистрация.
Пока устроит как нибудь так, зато будет весело:
if (preg_match("#^[-0-9\.a-z_]+@gmail\.com$#i", $email)) $error = 'Гугл запретил Вам здесь регистриваться ';
или так:
if (preg_match("#^[-0-9\.a-z_]+@gmail\.com$#i", $email)) $error = "Я не умею отправлять письма на $email)";
а скобка лишняя потому что там if ( был
Юрий Ярош: Вот об этом я и говорю, не навязывайте свою веру другим, лишь потому что она у вас искренняя. Не известно какие технологии на что способны, поэтому невозможность гарантии != гарантии невозможности, следовательно вероятность возможности предсказуемости, стабильности и масштабирования всегда есть. Меньше стопроцентных утверждений, www.youtube.com/watch?v=DKCJRs7tuqI
Низкая производительность != невозможность разработки полноценных "реактивных" решений.
Так и пишите - поголовное неумение, если уж представляетесь как программист-прагматик, вспомните что есть термин презумпция.
lega: как оказалось, решением было отсутствие атрибута onclick="show(id2,id);" , что ~20 байт. Просто тенденция усложнять элементарные вещи до подключения либ беспокоит не меньше, чем изучение не языков, а сразу либ и фреймворков. Ну да проехали, решение найдено, вопрос закрыт, похоливарим в другом вопросе.
Надо решить сколько записей (кнопок) может выводиться на экран. Если их очень мало (например постоянное меню админки), то можно перечислить в параметрах функции все скрываемые айдишники, и чуть модифицировать функцию.
Если записей (кнопок) может быть много (например пользовательский контент), то либо присвоить группе кнопок составной ID. Или обернуть родителем. Вариантов куча с реализацией в несколько строк. Как вам надо то?
Ну или можете воспользоваться решением lega, подтянув для такой ерунды 120+ Кб либу, так нынче профессионалы поступают, ведь приведенный вами код совершенно не читаем и никому непонятен), кто будет разбираться в этой вашей каше...