Платежная система с конечным выводом в Сбербанк?
После некоторого времени проведенного за гуглением, ответ на вопрос так и не был найден. Нужна платежная система, которая может проводить оплату по Visa/MasterCard, а также по электронным платежам на подобии Я.Денег и WebMoney. Но самым главным в выборе является то, что все средства в конце должны напрямую из платежной системы уходить на лицевой счет в СберБанке.
Существует ли в природе form-builder (PHP) + validator (client+server) в одном флаконе?
Существует ли гибкий form-builder (PHP), позволяющий одновременно назначать правила для серверной и клиентской валидации?
Собственно вопрос о том, чтобы не повторять одну и ту же работу два раза, в частности на хабре уже была попытка осмысления этой проблемы и предложен один из выходов (вернее его прообраз) и как там правильно заметили:
основная мысль — генерация клиентской валидации на сервере
Например, для клиентской валидации и построения всяких вкусностей типа повторяющиеся блоки (к примеру zforms.ru/docs/repeatable-model/) есть красивые решения типа zforms.ru/ от разработчика интерфейсов компании Яндекс Дмитрия Филатова
Да и просто, для валидации полно плагинов с использованием jQuery.
В конце концов есть Vanadium: семантическая валидация на клиенте
Для построения форм и серверной валидации есть замечательная библиотека Алексея Борзова и, как поправил меня сам Алексей, — Bertrand Mansion: HTML_QuickForm2.
Есть первая версия HTML_QuickForm, которая позволяет делать то, что требуется, т.е. строить формы и на основании запрашиваемых правил серверной валидации на лету генерировать правила клиентской валидации, но у нее есть огромный минус — невозможность простыми способами строить сложные формы, т.е. когда требуется например группу полей добавлять в группу, зато ей очень хорошо удаются плоские формы.
Дмитрий Филатов на мой вопрос есть ли обертка для построения таких форм ответил мне в МоёмКруге:
Есть не обертка на PHP, а xml-описание правил валидации, из которого строится с помощью xsl клиентский код и которое может быть использовано для серверной валидации.
Алексей Борзов на вопрос о дальнейшей судьбе HTML_QuickForm2 ответил:
HTML_QuickForm2 в альфе потому, что опять же недописана функциональность (а именно интеграция с жаваскриптом). Но в отличие от старой версии он почти на 100% покрыт тестами и по стабильности явно не хуже...
Другими словами, есть дикое желание подружить HTML_QuickForm2 и zforms.ru, но перед этим хотел бы поинтересоваться у «ленивых программистов», как они борются с ленью при построении форм и двойной работой по проверке вводимых данных?
update: вопрос решил путем запуска проекта jquickform.ru/
На что я обращаю внимание при найме операционного директора?
Мы-небольшое (20 человек), но растущее интернет-агентство, и мы решили, что пришло время для операционного директора. Большая часть тяжелого подъема оперативно была обработана техническим директором и одним менеджером проекта (который переходит из управления проектами в разработку продукта)
- Какой тип личности лучше всего подходит?
- Должны ли они иметь техническое образование (как программист? как sysadmin?)
- Важен ли возраст? Мы должны искать кого-то старше 30 лет?
- Существуют ли какие-либо конкретные виды хобби, среды, другие внешние индикаторы, которые показывают, что кто-то является операционным Богом/Богиней (я знаю, как определить технический/творческий выродок, но не операционный.)
Как IE7 определяет зону безопасности сайта
Кто-нибудь знает, как IE7 определяет, какую зону безопасности использовать для сайта? Я вижу основы для IE6 здесь, но я не могу найти эквивалент для IE7.
Диагностирования тупиков на сервере SQL 2005
Мы видим некоторые пагубные, но редкие условия взаимоблокировки в базе данных Stack Overflow SQL Server 2005.
Я прикрепил профилировщик, настроил профиль trace, используя эту превосходную статью об устранении тупиков, и захватил кучу примеров. Самое странное, что тупиковая запись всегда одна и та же :
UPDATE [dbo].[Posts]
SET [AnswerCount] = @p1, [LastActivityDate] = @p2, [LastActivityUserId] = @p3
WHERE [Id] = @p0
Другой оператор deadlocking варьируется, но обычно это какое-то тривиальное, простое чтение таблицы posts. Этот всегда погибает в тупике. Вот вам пример
SELECT
[t0].[Id], [t0].[PostTypeId], [t0].[Score], [t0].[Views], [t0].[AnswerCount],
[t0].[AcceptedAnswerId], [t0].[IsLocked], [t0].[IsLockedEdit], [t0].[ParentId],
[t0].[CurrentRevisionId], [t0].[FirstRevisionId], [t0].[LockedReason],
[t0].[LastActivityDate], [t0].[LastActivityUserId]
FROM [dbo].[Posts] AS [t0]
WHERE [t0].[ParentId] = @p0
Чтобы быть совершенно ясным, мы не видим тупиков записи / записи, но читаем / пишем.
На данный момент мы имеем смесь LINQ и параметризованных SQL запросов. Мы добавили with (nolock) ко всем SQL запросам. Возможно, это и помогло некоторым. У нас также был один (очень) плохо написанный запрос значка, который я исправил вчера, который занимал более 20 секунд, чтобы выполнить каждый раз, и выполнялся каждую минуту. Я надеялся, что это было источником некоторых проблем с замком!
К сожалению, я получил еще одну тупиковую ошибку около 2 часов назад. Те же самые точные симптомы, тот же самый точный виновник пишут.
По-настоящему странно то, что оператор блокировки write SQL, который вы видите выше, является частью очень специфического пути кода. Он выполняется только тогда, когда к вопросу добавляется новый ответ-он обновляет родительский вопрос с новым количеством ответов и last date/user. это, очевидно, не так часто по сравнению с огромным количеством считываний, которые мы делаем! Насколько я могу судить, мы не делаем огромное количество записей в любом месте приложения.
Я понимаю, что NOLOCK-это своего рода гигантский молоток, но большинство запросов, которые мы здесь выполняем, не должны быть такими точными. Будет ли вам небезразлично, если ваш профиль пользователя устарел на несколько секунд?
Использование NOLOCK с Linq немного сложнее, как это обсуждает здесь Скотт Ханселман .
Мы заигрываем с идеей использования
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
на базовом контексте базы данных, так что все наши запросы LINQ имеют этот набор. Без этого нам пришлось бы оборачивать каждый вызов LINQ, который мы делаем (ну, простые считывающие вызовы, которые являются подавляющим большинством из них), в блок кода транзакции строки 3-4, что некрасиво.
Я думаю, что немного разочарован тем, что тривиальные чтения в SQL 2005 могут затормозить на записи. Я мог бы видеть, что писать / писать тупики-это огромная проблема, но читает? У нас здесь нет банковского сайта, нам не нужна идеальная точность каждый раз.
Идеи? Мысли?
Вы создаете новый объект LINQ - SQL DataContext для каждой операции или, возможно, используете один и тот же статический контекст для всех своих вызовов?
Джереми, мы по большей части делимся одним статическим datacontext в базовом контроллере:
private DBContext _db;
/// <summary>
/// Gets the DataContext to be used by a Request's controllers.
/// </summary>
public DBContext DB
{
get
{
if (_db == null)
{
_db = new DBContext() { SessionName = GetType().Name };
//_db.ExecuteCommand("SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED");
}
return _db;
}
}
Вы рекомендуете нам создать новый контекст для каждого контроллера, или для каждой страницы, или .. а чаще всего?
Firefox расширение для записи и повторения взаимодействия с сайтом
Кто-нибудь знает о расширении firefox или каком-либо другом инструменте, который позволяет вам 'record' взаимодействия с веб-сайтом, а затем воспроизводить их, как способ тестирования веб-сайта?
Нажмите на изображение, получите координаты
Я знаю, что это можно сделать, и у меня даже есть смутное представление о том, как это сделать, но оно перестает быть смутным.
У меня есть стандартный тег HTML image с изображением в нем, размером 100 на 100 пикселей. Я хочу, чтобы люди могли щелкнуть по изображению и для этого передать X и Y, которые они нажимают, в функцию.
Координаты должны быть относительно изображения сверху и слева.
Заранее благодарю вас за любую помощь.
Лучший Способ Определить, Установлен Ли .NET 3.5
Мне нужно программно определить, установлен ли .NET 3.5. Я думал, что это будет легко:
<% Response.Write(Environment.Version.ToString()); %>
Который возвращает "2.0.50727.1434", так что нет такой удачи...
В своем исследовании я обнаружил, что есть некоторые довольно неясные ключи реестра, которые я могу посмотреть, но я не уверен, что это тот путь, по которому нужно идти. У кого-нибудь есть какие-нибудь предложения?
Запуск openofficeю.writer из коммандной строки в macos?
Недавно на mac, пытаюсь сделать такую вещь:
open -a /Applications/OpenOffice.app --args -writer
Но он открывает новый writer только если OpenOffice еще не был запущен, если был запущен раньше показывает последнее активное окно.
Как создать новый документ из консоли?
Что-то случилось у Selectel?
С полчаса не могу достучаться ни до их сайта, ни до известных мне сайтов, которые хостятся у них. Сначала сервера не пинговались, затем перестали и резолвиться. На vkontakte.ru вместо некоторых (довольно многих) фото выводится плашка «Сервер с этой фотографией временно отключен», для flash-приложений пишется «Сервер с данным приложением переезжает в другой датацентр.»
Какая-то авария, плановые работы или цепочка совпадений, включая глюки DNS моего провайдера?
Updated: Сайт самого Selectel'а заработал, нужные мне сайты, хостящиеся у них нет :(
- «
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210
- 211
- 212
- 213
- 214
- 215
- 216
- 217
- 218
- 219
- 220
- 221
- 222
- 223
- 224
- 225
- 226
- 227
- 228
- 229
- 230
- 231
- 232
- 233
- 234
- 235
- 236
- 237
- 238
- 239
- 240
- 241
- 242
- 243
- 244
- 245
- 246
- 247
- 248
- 249
- 250
- 251
- 252
- 253
- 254
- 255
- 256
- 257
- 258
- 259
- 260
- 261
- 262
- 263
- 264
- 265
- 266
- 267
- 268
- 269
- 270
- 271
- 272
- 273
- 274
- 275
- 276
- 277
- 278
- 279
- 280
- 281
- 282
- 283
- 284
- 285
- 286
- 287
- 288
- 289
- 290
- 291
- 292
- 293
- 294
- 295
- 296
- 297
- 298
- 299
- 300
- 301
- 302
- 303
- 304
- 305
- 306
- 307
- 308
- 309
- 310
- 311
- 312
- 313
- 314
- 315
- 316
- 317
- 318
- 319
- 320
- 321
- 322
- 323
- 324
- 325
- 326
- 327
- 328
- 329
- 330
- 331
- 332
- 333
- 334
- 335
- 336
- 337
- 338
- 339
- 340
- 341
- 342
- 343
- 344
- 345
- 346
- 347
- 348
- 349
- 350
- 351
- 352
- 353
- 354
- 355
- 356
- 357
- 358
- 359
- 360
- 361
- 362
- 363
- 364
- 365
- 366
- 367
- 368
- 369
- 370
- 371
- 372
- 373
- 374
- 375
- 376
- 377
- 378
- 379
- 380
- 381
- 382
- 383
- 384
- 385
- 386
- 387
- 388
- 389
- 390
- 391
- 392
- 393
- 394
- 395
- 396
- 397
- 398
- 399
- 400
- 401
- 402
- 403
- 404
- 405
- 406
- 407
- 408
- 409
- 410
- 411
- 412
- 413
- 414
- 415
- 416
- 417
- 418
- 419
- 420
- 421
- 422
- 423
- 424
- 425
- 426
- 427
- 428
- 429
- 430
- 431
- 432
- 433
- 434
- 435
- 436
- 437
- 438
- 439
- 440
- 441
- 442
- 443
- 444
- 445
- 446
- 447
- 448
- 449
- 450
- 451
- 452
- 453
- 454
- 455
- 456
- 457
- 458
- 459
- 460
- 461
- 462
- 463
- 464
- 465
- 466
- 467
- 468
- 469
- 470
- 471
- 472
- 473
- 474
- 475
- 476
- 477
- 478
- 479
- 480
- 481
- 482
- 483
- 484
- 485
- 486
- 487
- 488
- 489
- 490
- 491
- 492
- 493
- 494
- 495
- 496
- 497
- 498
- 499
- 500
- 501
- 502
- 503
- 504
- 505
- 506
- 507
- 508
- 509
- 510
- 511
- 512
- 513
- 514
- 515
- 516
- 517
- 518
- 519
- 520
- 521
- 522
- 523
- 524
- 525
- 526
- 527
- 528
- 529
- 530
- 531
- 532
- 533
- 534
- 535
- 536
- 537
- 538
- 539
- 540
- 541
- 542
- 543
- 544
- 545
- 546
- 547
- 548
- 549
- 550
- 551
- 552
- 553
- 554
- 555
- 556
- 557
- 558
- 559
- 560
- 561
- 562
- 563
- 564
- 565
- 566
- 567
- 568
- 569
- 570
- 571
- 572
- 573
- 574
- 575
- 576
- 577
- 578
- 579
- 580
- 581
- 582
- 583
- 584
- 585
- 586
- 587
- 588
- 589
- 590
- 591
- 592
- 593
- 594
- 595
- 596
- 597
- 598
- 599
- 600
- 601
- 602
- 603
- 604
- 605
- 606
- 607
- 608
- 609
- 610
- 611
- 612
- 613
- 614
- 615
- 616
- 617
- 618
- 619
- 620
- 621
- 622
- 623
- 624
- 625
- 626
- 627
- 628
- »