powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Поиск по id и выдача бонуса
5 сообщений из 5, страница 1 из 1
Поиск по id и выдача бонуса
    #38100810
trytgilojo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здраствуйте. Я в етом деле новичек.
Прошу помощи знающих людей.
Что не так работает здесь?
Ощибки не выдает вообще никогда у меня. просто не работает и все.


Код: php
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.
<?php 
////////////////////////////////////////////////////////////////
//		Z-PAYMENT, система приема и обработки платежей 		  //
//		All rights reserved © 2002-2007, TRANSACTOR LLC		  //
////////////////////////////////////////////////////////////////
//Скрипт обрабатывающий запросы Z-PAYMENT
//Устанавливаем метод приема данных
$IdShopZP;
$NumberOrder;
$SecretKeyZP;
$AmountOrder;
$name;
$itemid = 4356;
$nick;
$email;

if($ResultMethod=='POST') $HTTP = $HTTP_POST_VARS; 
else $HTTP = $HTTP_GET_VARS;
//Преобразуем массив в переменные
foreach ($HTTP as $Key=>$Value) { $$Key = $Value; }

/* Соединяемся с базой данных */
$hostname = "sql.blablabla.com"; // название/путь сервера, с MySQL
$username = "user1"; // имя пользователя (в Denwer`е по умолчанию "root")
$password = "userpas1"; // пароль пользователя (в Denwer`е по умолчанию пароль отсутствует, этот параметр можно оставить пустым)
$dbName = "mydb"; // название базы данных

$hostname2 = "12.109.110.115"; // название/путь сервера, с MySQL
$username2 = "user2"; // имя пользователя (в Denwer`е по умолчанию "root")
$password2 = "userpas2"; // пароль пользователя (в Denwer`е по умолчанию пароль отсутствует, этот параметр можно оставить пустым)
$dbName2 = "l2game"; // название базы данных
 
/* Таблица MySQL, в которой будут храниться данные */
$table = "mydonate";
$table2 = "payset";
$table3 = "mydonatelog";
 
/* Создаем соединение */
$connec = mysql_connect($hostname, $username, $password) or die ("Не могу создать соединение");
 
/* Выбираем базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName, $connec) or die (mysql_error());

/* Составляем запрос для извлечения данных из полей "name", "email", "theme",
"message", "data" таблицы "test_table" */
$query = "SELECT * FROM $table";

/* Выполняем запрос. Если произойдет ошибка - вывести ее. */
$result = mysql_query($query) or die(mysql_error());

while($row = mysql_fetch_assoc($result))// берем результаты из каждой строки
{$id1 = ''.$row['id'].'';
 $NumberOrder=''.$row['numberorder'].'';
 $AmountOrder =  ''.$row['countgold'].'';// выводим данные
 $nick =  ''.$row['playername'].'';
 $email =  ''.$row['nmail'].'';
}

$query = "SELECT * FROM $table2";

$result = mysql_query($query) or die(mysql_error());

while($row=mysql_fetch_assoc($result))// берем результаты из каждой строки
{ $id2=''.$row['id'].'';
  $NumberOrder=''.$row['numberorder'].'';
  $IdShopZP=''.$row['idshopzp'].'';// выводим данные
  $SecretKeyZP=''.$row['secretkeyzp'].'';
}

//Проверяем номер магазина 
if($LMI_PAYEE_PURSE!=$IdShopZP) {
	die("ERR: Id магазина не соответсвует настройкам сайта!");
}
//Проверяем номер заказа 
if($LMI_PAYMENT_NO!=$NumberOrder) {
	die("ERR: Номер счета не соответсвует заказу!");
}
//Настоятельно рекомендуем сверять сумму оплаты с суммой вашего заказа из БД
/*$RealAmountOrder = GetAmountOrder($LMI_PAYMENT_NO);
if($RealAmountOrder!=$LMI_PAYMENT_AMOUNT) {
	die("ERR: Сумма оплаты не соответсвует сумме заказа!");
}*/
//Предварительный запрос на проведение платежа?
if($LMI_PREREQUEST==1) {
// Если в настройках магазина https://z-payment.ru/shops.php
// Задана опция "Отправлять предварительный запрос перед оплатой на Result URL"
// Перед оплатой этот скрипт будет получать запрос на разрешение оплаты, если платеж прошел
// проверку требуется вернуть YES, любое другое сообщение будет принято системой как запрет 
// оплачивать счет

// В этом месте вы можете проверить наличие товара, курсы валют и другую информацию о заказе
// зарезервировать товар на складе, перед тем как разрешите покупателю совершить оплату. 
// Здесь же можно изменить статус заказа на "Ожидает оплаты" 
// Не забывайте проверить статус заказа на предмет ОТМЕНЫ или ОПЛАТЫ

// $CLIENT_MAIL  -  емаил покупателя 
// $LMI_PAYER_WM - кошелек покупателя или его емаил 
// $LMI_MODE = 0 - рабочий режим
// $DESC_PAY - Описание товара
// $USER_VALUE1, $USER_VALUE2, ... Остальные переменные переданные продавцом 
// в форме запроса платежа
	
	//Разрешаем оплату
	echo 'YES';

} else { //Уведомление об оплате
// Если Result URL обеспечивает безопасное соединение SSL и выставлена 
// настройка "Отправлять ключ магазина, если Result URL обеспечивает безопасность"
// сверяем ключи, этого достаточно при условии, что вы задали 
	if(isset($LMI_SECRET_KEY)) {
		// Если ключ совпадает, занчит все ОК, проводим заказ 
		if($LMI_SECRET_KEY==$SecretKeyZP) {
			//Подтверждение оплаты заказа 
			$Result = ConfirmOrder($LMI_PAYMENT_NO);
			//Все прошло успешно
			if($Result) echo 'YES';
		} else {
			//Отмена заказа
			CancelOrder($LMI_PAYMENT_NO);
		}
	} else {
		// Ключ не был передан, требуется проверить контрольный хеш запроса 
		//Расчет контрольного хеша из полученных переменных и Ключа мерчанта
		$CalcHash = md5($LMI_PAYEE_PURSE.$LMI_PAYMENT_AMOUNT.$LMI_PAYMENT_NO.$LMI_MODE.$LMI_SYS_INVS_NO.$LMI_SYS_TRANS_NO.$LMI_SYS_TRANS_DATE.$SecretKeyZP.$LMI_PAYER_PURSE.$LMI_PAYER_WM);
		//Сравниваем значение расчетного хеша с полученным 
		if($LMI_HASH == strtoupper($CalcHash)) {
			//Подтверждение оплаты заказа 
			$Result = ConfirmOrder($LMI_PAYMENT_NO);
			//Все прошло успешно
			if($Result) echo 'YES';
		} else {
			//Отмена заказа
			CancelOrder($LMI_PAYMENT_NO);
		}
	}
}
// Функция получает сумму заказа из базы данных магазина по номеру счета, 
// В этой же функции можно проверить наличие заказа с запрашиваемым ID
// здесь символически возвращает цену заказа из настроек config_zp.php
function GetAmountOrder($NumberOrder){
	global $AmountOrder;
	// Запрос к БД даных заказов 
	return $AmountOrder;
}
// Функция успешного проведения оплаты
// Конкретное наполнении функции зависит от бизнес логики вашего сайта.
//
/// ***********************************
/* Закрываем соединение */

$connec2 = mysql_connect($hostname2, $username2, $password2) or die ("Не могу создать соединение");
 
/* Выбираем базу данных. Если произойдет ошибка - вывести ее */
mysql_select_db($dbName2, $connec2) or die (mysql_error());

$query = "SELECT * FROM `characters` WHERE `char_name`='".$_GET["obj_Id"]."'";
$result = mysql_query($query,$connec2) or die("Ошибка mysql : ".mysql_error());
$row = mysql_fetch_assoc($result);
$name = $row['obj_Id'];


//$connec = mysql_connect($hostname2, $username2, $password2) or die ("Не могу создать соединение");
 
/* Выбираем базу данных. Если произойдет ошибка - вывести ее */
//mysql_select_db($dbName2, $connec) or die (mysql_error());

$query = "SELECT * FROM $table WHERE `NumberOrder`='{$NumberOrder}' AND `countgold`='{$AmountOrder}'";

                 if (NumRows($query) == 1)

                  {

                     $data = FetchArray($query);

                                $query = "SELECT `count` FROM `items` WHERE `owner_id`='{$name}' AND `item_id`='{$itemid}' AND `loc`='INVENTORY'";

                                $item_count = mysql_query($query,$connec);
								
								if (NumRows($item_count) > 0)
                                    $query = "UPDATE `items` SET `count`=`count`+{$AmountOrder} WHERE `owner_id`='{$name}' AND item_id='{$itemid}' AND `loc`='INVENTORY'";
									mysql_query($query,$connec);
                                else

                                {
									$query = "SELECT MAX(object_id)+1 FROM items";
                                    $obj = (mysql_query($query,$connec), 0);
									 

                                    $query = "INSERT INTO `items` SET `owner_id`='{$name}',`object_id`='{$obj}',`count`='{$AmountOrder}',`item_id`='{$itemid}',`enchant_level`='0',`loc`='INVENTORY',`loc_data`='0'";
                                    mysql_query($query,$connec);
                                }
								
							
//
/* Определяем текущую дату */
$cdate = date("Y-m-d");
                                    $query = "INSERT INTO `mydonatelog` SET `numberorder`='{$NumberOrder}',`countgold`='{$AmountOrder}',`playername`='{$nick}',`email`='{$email}',`data`='{$cdate}'";

                                    mysql_query($query, $connec2);
									/* Закрываем соединение */
									mysql_close($connec2); 
//
									/* Создаем соединение */
									//$connec = mysql_connect($hostname, $username, $password) or die ("Не могу создать соединение");
 
									/* Выбираем базу данных. Если произойдет ошибка - вывести ее */
									//mysql_select_db($dbName, $connec) or die (mysql_error());



									/* Составляем запрос*/
									$query = "UPDATE $table2 SET `numberorder`=`numberorder`+1";

									/* Выполняем запрос. Если произойдет ошибка - вывести ее. */
									mysql_query($query, $connec);
									
									/* Составляем запрос*/
									$query = "delete from $table where (`numberorder`='$NumberOrder')";

									/* Выполняем запрос. Если произойдет ошибка - вывести ее. */
									mysql_query($query, $connec);
                }
    
               else
 
                 $user->show"Error: order does not exist! Order: " . $id;

///
function ConfirmOrder($NumberOrder) {
// Здесь необходимо выполнить все действия по обновлению статуса заказа, 
// уведомлению клиента, отгрузке товара и пр. действия после получения оплаты заказа
	return true;
}
// Функция отмены заказа
// Конкретное наполнении функции зависит от бизнес логики вашего сайта.
function CancelOrder($NumberOrder) {
// Здесь необходимо выполнить все действия по отмене заказа
	return true;
}
									/* Закрываем соединение */
									mysql_close($connec2); 
?>



...
Рейтинг: 0 / 0
Поиск по id и выдача бонуса
    #38100856
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
trytgilojo , у вас в коде работы со второй базой нигде нет mysql_error(), это раз.
Ошибка необязательно мусклевская, может, в каком-то из ветвлений нет вывода сообщений - это два (но это уже к пхпшникам вопрос).

Модератор: Тема перенесена из форума "MySQL".
...
Рейтинг: 0 / 0
Поиск по id и выдача бонуса
    #38100991
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторtrytgilojo, у вас в коде работы со второй базой нигде нет mysql_error(), это раз.
В первой половине скрипта есть :)
...
Рейтинг: 0 / 0
Поиск по id и выдача бонуса
    #38101056
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор
Код: php
1.
$HTTP_POST_VARS

Ваша версия пхп настолько стара?
...
Рейтинг: 0 / 0
Поиск по id и выдача бонуса
    #38101062
phpz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
trytgilojo,

А что за функции такие интересные:
Код: php
1.
2.
3.
if (NumRows($query) == 1)
...
$data = FetchArray($query);


Если они самописные, то библиотека где-то подключается?
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Поиск по id и выдача бонуса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]