Intereting Posts
как заполнить при выпадающем основании значение из другого выпадающего списка в php и jquery? PHP DOM получает элементы из первого элемента ul PHP PCNTL – что делает параметр pcntl_signal () restart_syscalls? Неустранимая ошибка в преобразовании PPT в PNG в PHP Различия между циклом while и циклом for в PHP? Почему не могут взаимодействовать скрипты на стороне сервера и на стороне клиента? PHP – Причины использования итераторов? Кодовое обозначение: код автоинкремента ошибок Отправка JSON jQuery Ajax на PHP и обратно PHP-скрипт, вызываемый ajax, не может выполнить start_session () Тестирование, если сеть в записи cidr перекрывает другую сеть Является ли хорошее знание PHP необходимым для создания устанавливаемого шаблона для таких CMS, как WordPress, Joomla или Drupal? Измените размер изображения без искажения, сохраняя пропорции, а затем избыток урожая с помощью WideImage имя браузера в php? Почему файлы не загружаются с помощью этого HTML / PHP?

Настройка простого тестирования A / B с помощью PHP

У меня есть веб-страница на моем сайте – или действительно это веб-приложение, и эта страница является своего рода панелью управления (необходимо войти в систему).

Я хотел бы попробовать два дизайна для панели, которая отображается справа от страницы.

У меня есть 2 панели дизайна, и я могу легко отслеживать, когда каждый клик, но как я могу предоставить эти альтернативные версии?

  • должен ли я как-то загружать их в качестве альтернативы при загрузке страницы (это означает, что один человек видит их обоих)

  • следует ли указывать пользователям как a, так и b, и они только видят эту версию?

и как я равномерно доставляю его, чтобы посетитель 1 получал A, посетитель 2 получает B и т. д.

Я бы взял хэш IP-адреса пользователя, а затем mod 2, чтобы получить значение 0 или 1.

$ip=$_SERVER['REMOTE_ADDR']; $hash=md5($ip); $number = hexdec( substr($hash, 0, 4)); $version = $number % 2; if( $version == 0) { // show A } else { // show B } 

Это хорошо, потому что один пользователь всегда будет видеть одну и ту же версию, и он будет равномерно распределять пользователя по обоим версиям.

Это действительно зависит от того, насколько тяжелым является решение, которое вы хотите. Решение Jon будет работать, если пользователи не NAT'd, но вы можете добавить сеанс, если хотите предотвратить эту проблему. Если вам нужен более привлекательный и гибкий вариант, там доступно множество инструментов, включая phpab