• Как передать по очереди данные в форму PHP?

    motokraft
    @motokraft
    Кратко о себе
    1. вариант (если сумма пополнения для всех номеров одинакова) - в форме input с именем phone делаешь textarea, и каждый номер пишешь с новой строки, далее в обработчике значение textarea разбиваешь на \n (перенос строки)
    и в итоге получается что все номера содержаться в массиве и после этого работаешь с этим массивом. К примеру
    <textarea name="phone">24899291
    24899391
    95877310</textarea>

    таки образом я получу массив
    $phones = array('24899291', '24899391', '95877310');

    далее я работаю с этим массивом
    foreach($phones as $phone)
    {
    	$initOutput = $payeer->initOutput(array(
    		'ps' => $_POST['operator'],
    		'curIn' => 'RUB',
    		'sumOut' => 10,
    		'curOut' => 'RUB',
    		'param_ACCOUNT_NUMBER' => $phone,
    	));
    
    	if ($initOutput)
    	{
    		$historyId = $payeer->output();
    		if ($historyId > 0)
    		{
    			echo "Выплата успешна";
    		}
    		else
    		{
    			echo '<pre>' . print_r($payeer->getErrors() , true) . '</pre>';
    		}
    	}
    	else
    	{
    		echo '<pre>' . print_r($payeer->getErrors() , true) . '</pre>';
    	}
    }


    2. вариант (если для каждого номера своя сумма пополнения) - оформить можно как угодно, но от этого смысл не меняется. Вариант для одного телефона. Код формы
    <p><input type="text" name="phone[0][number]" placeholder="Номер телефона"></p>
    <p><input type="text" name="phone[0][sum]" placeholder="Сумма пополнения"></p>

    обработчик получит вот такие данные (пример для трех телефонов)
    array(
    	array(
    		'number' => '24899291',
    		'sum' => '10'
    	),
    	array(
    		'number' => '24899391',
    		'sum' => '20'
    	),
    	array(
    		'number' => '95877310',
    		'sum' => '30'
    	)
    )

    такого рода имена полей указаны не случайны, т. к. с ними очень удобно работать в обработчике. Далее почти все все тоже самое что и сверху
    foreach($_POST['phones'] as $phone)
    {
    	$initOutput = $payeer->initOutput(array(
    		'ps' => $_POST['operator'],
    		'curIn' => 'RUB',
    		'sumOut' => $phone['sum'],
    		'curOut' => 'RUB',
    		'param_ACCOUNT_NUMBER' => $phone['number'],
    	));
    
    	if ($initOutput)
    	{
    		$historyId = $payeer->output();
    		if ($historyId > 0)
    		{
    			echo "Выплата успешна";
    		}
    		else
    		{
    			echo '<pre>' . print_r($payeer->getErrors() , true) . '</pre>';
    		}
    	}
    	else
    	{
    		echo '<pre>' . print_r($payeer->getErrors() , true) . '</pre>';
    	}
    }
    Ответ написан
    3 комментария
  • Как улучшить ноутбук?

    @inkvizitor68sl
    Linux-сисадмин с 8 летним стажем.
    ssd, ram до упора, сколько влезет.
    Больше никак.
    Ответ написан
    2 комментария
  • Как представляется порядок в нормализованном представлении числа в форме с плавающей точкой в памяти компьютера?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Возьмём, например, число 25.5
    Переведём его в двоичную форму, получим 11001.1
    Теперь нормализуем число, получим 1.10011x24

    Для 64-битного представления получим
    Знак +, первый бит 0
    Экспонента (11 разрядов) 4+1023 = 102710 = 100000000112
    Мантисса (отбрасываем первую единицу, она всегда есть в нормализованном числе, 52 разряда) =
    = 1001100000000000000000000000000000000000000000000000

    Записываем всё вместе, получаем
    0100000000111001100000000000000000000000000000000000000000000000
    или в hex-представлении 0x4039800000000000

    PS. Ошибочка была, поправил.
    Ответ написан
    Комментировать
  • Как установить Windows, Linux, Mac OS на один компьютер?

    yurikoles
    @yurikoles
    Software Engineer
    Для начала выложи полные характеристики. Кстати, модель HDD в данном вопросе играет последнюю роль.
    Я на своём использую загрузчик Clover EFI, он умеет грузить OS X и передавать управление другим UEFI-загрузчикам, например GRUB 2 или Windows (bootmgr у них сейчас?).
    Рецепт такой:
    1. Ставишь Winows 10, жесткий диск размечаешь в GPT, отдаёшь венде не весь диск, а сколько там тебе нужно, но не менее 100 GB, это личный совет.
    2. Создаёшь раздел для OSX, можешь не форматировать. Разворачиваешь туда образ OS X от Archi_ из Windows.
    3. Делаешь загрузочную флешку с BootDiskUtility, пробуешь запустить OSX. Если получиться ставишь Clover на ESP.

    С Fedora проще, она с вероятностью 99,5% будет просто работать.
    Ответ написан
    1 комментарий
  • Как создать Wi-Fi сеть уже из существующей Wi-Fi сети?

    opium
    @opium
    Просто люблю качественно работать
    Поставьте вайфай репитер с этой антенной.
    Ответ написан
    Комментировать
  • Как создать Wi-Fi сеть уже из существующей Wi-Fi сети?

    Jump
    @Jump
    Системный администратор со стажем.
    Ну так сделайте этот самый внешний приемник шлюзом по умолчанию, и поставьте галку "разрешить использовать подключение другим пользователям сети", после чего на Windows 7 автоматически включится DHCP сервер, адрес поменяется на 192.168.0.1(можно поменять) и она начнет раздавать интернет.
    Ответ написан
    Комментировать