@WalkersRei

Warning: A non-numeric value encountered как исправить?

Вот сам код.
<?php
	$Customer_IDP	= $_POST["customerEmail"];
	$Subtotal_P 	= $_POST["result"];
	$Lifetime 		= "300";
	$Order_IDP		= $Customer_IDP;
	$IData			= "";
//--------------- Должно быть заполнено (кавычки не убирать!) --------------
// Пароль:
	$password = "1";  //Значение Password (80 символов) из Личного кабинета, раздел "Параметры авторизации"
// ID магазина:
	$Shop_IDP = "1";                                                                      //Значение Uniteller Point ID (как правило, 8 цифр) из Личного кабинета, раздел "Точки продажи"
// Адрес сайта:
	$url = "http://toster.ru/";                                                        // Формат адреса: http://mysite.com/
	$signature = strtoupper(md5(md5($Shop_IDP) + '&' + md5($Order_IDP) + '&' + md5($Subtotal_P) + '&' + md5("") + '&' + md5("") + '&' + md5($Lifetime) + '&' + md5($Customer_IDP) + '&' + md5("") + '&' + md5($IData) + '&' + md5("") + '&' + md5($password)));
	$redirect = "https://wpay.uniteller.ru/pay/?Shop_IDP=".$Shop_IDP."&URL_RETURN=".$url."&Lifetime=".$Lifetime."&Signature=".$signature."&Email=".$Customer_IDP."&Order_IDP=".$Customer_IDP."&Subtotal_P=".$Subtotal_P;
 	//echo "Вы будете переадресованы на страницу оплаты. Если ваш браузер не поддерживает передаресацию, нажмите вот <a href='".$redirect."'>сюда.</a>";
	header('Refresh: 5; '.$redirect.'');
	?>
	<center>Вы будете переадресованы на страницу оплаты. Если ваш браузер не поддерживает передаресацию, нажмите вот <a href="<?php echo $redirect; ?>">сюда.</a></center>


Кодировка UTF-8, выводить такую ошибку:
5dc512968c9bf981785671.png
  • Вопрос задан
  • 64 просмотра
Решения вопроса 1
@guruloz
А так?

// тут старый неизменённый код
$signature = strtoupper(md5(md5($Shop_IDP) . '&' . md5($Order_IDP) . '&' . md5($Subtotal_P) . '&' . md5("") . '&' . md5("") . '&' . md5($Lifetime) . '&' . md5($Customer_IDP) . '&' . md5("") . '&' . md5($IData) . '&' . md5("") . '&' . md5($password)));


То в JS конкатенация выполняется через +, а в PHP, через .
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
anton_reut
@anton_reut
Начинающий веб-разработчик
У тебя хэш strtoupper(md5(md5($Shop_IDP) возвращает строку не смотря на то что ты пытаешься захэшировать единицу, и ты пытаешься складывать строки а не числа через "+". От этого и ошибка.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Vigrom Москва
До 150 000 руб.
SaveTime Москва
от 100 000 руб.
Teamlead Ставрополь
от 25 000 до 50 000 руб.
15 нояб. 2019, в 01:36
10000 руб./за проект
15 нояб. 2019, в 01:32
5000 руб./за проект