PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Описание: Очередная порция ошибок в коде снова сводит с ума...
Поиск в теме | Версия для печати
Sasha777
Отправлено: 03 Ноября, 2019 - 20:19:44
Новичок
Покинул форум
Сообщений всего: 21
Дата рег-ции: Нояб. 2019
Откуда: Россия
Помог: 0 раз(а)
PHP:
скопировать код в буфер обмена
global $pdo ;
$info = [ "машины" => 1 , "машыны" => 1 , "яхты" => 2 , "самолеты" => 3 , "самолёты" => 3 , "самалёты" => 3 , "самалеты" => 3 , "верталёты" => 4 , "верталеты" => 4 , "вертолёты" => 4 , "вертолеты" => 4 , "дома" => 5 , "квартиры" => 6 , "телефоны" => 7 , "фермы" => 8 , "бизнесы" => 9] ;
$propertyCount = "SELECT COUNT(1) FROM property WHERE type = " . $propertyID . "'" [ 0] ;
$sql = "SELECT * FROM accounts WHERE uid = " . $user [ 'id' ] ;
$result = $pdo -> query ( $sql ) ;
foreach ( $result as $rew ) {
$result = "SELECT * FROM property WHERE type = " . $propertyID ; $msg = "список:<br>" ;
$res = $pdo -> query ( $result ) ;
while ( $row = $res -> fetch ( PDO:: FETCH_BOTH ) ) { $msg .= $row [ 'pid' ] . '. ' . $row [ 'name' ] . ' - ' . $row [ 'cost' ] . '$<br>' ; }
$Wolf -> send ( $msg . "Для покупки введите <<" . $params [ 1 ] . " [номер]>>" ) ;
}
else {
$res = "SELECT * FROM property WHERE type = " . $propertyID . " AND pid = " . $params [ 2] ;
$result = $pdo -> query ( $res ) ;
foreach ( $result as $row ) {
if ( $rew [ 'money' ] < $row [ 'cost' ] ) { $Wolf -> send ( "у вас недостаточно денег" ) ; return ; }
if ( $propertyID == 8) {
$userFerm = explode ( '&' , $row [ 'ferm' ] ) ; if ( empty ( $params [ 3
] ) && ( $row [ 'money' ] < ( $params [ 3
] * $row [ 'cost' ] ) || $params [ 3
] <= 0
) ) { $Wolf -> send ( "у вас недостаточно денег" ) ; return ; } elseif ( $userFerm [ 0] != 0 && $userFerm [ 0] != $params [ 2] ) { $Wolf -> send ( "вы не можете купить разные фермы" ) ; return ; }
$link = "UPDATE accounts SET money = (money + " . $params [ 2] ? - ( $row [ 'cost' ] * $params [ 2] ) : - ( $row [ 'cost' ] ) . ") WHERE uid = " . $user [ 'id' ] ;
$pdo -> query ( $link ) ;
$userFerm [ 0] = $params [ 2] ;
$userFerm [ 1] += ( $params [ 3] ? $params [ 3] : 1) ;
if ( $userFerm [ 2
] == 0
) $userFerm [ 2
] = time ( ) ;
$lin = "UPDATE accounts SET money = (money - '" . ( $params [ 3
] ?
- ( $row [ 'cost' ] * $params [ 3
] ) : - ( $row [ 'cost' ] ) ) . "'), ferm = '" . join ( '&' , $userFerm ) . "' WHERE uid = " . $user [ 'id' ] ; $pdo -> query ( $lin ) ;
} elseif ( $propertyID == 9) {
$userBusiness = explode ( '&' , $row [ 'business' ] ) ; if ( $userBusiness [ 0] != 0) { $Wolf -> send ( "у вас уже есть бизнес!" ) ; return ; }
$userBusiness [ 0] = $params [ 2] ;
$userBusiness [ 3
] = time ( ) ;
$linki = "UPDATE accounts SET money = (money - '" . $row [ 'cost' ] . "'), business = '" . join ( '&' , $userBusiness ) . "' WHERE uid = " . $user [ 'id' ] ; $pdo -> query ( $linki ) ;
} else {
$userProperty = explode ( '&' , $row [ 'property' ] ) ; if ( $userProperty [ $propertyID ] != 0) { $Wolf -> send ( "у вас уже есть данное имущество" ) ; return ; }
$userProperty [ $propertyID ] = $row [ 'name' ] ;
$linko = "UPDATE accounts SET money = (money - '" . $row [ 'cost' ] . "'), property = '" . join ( '&' , $userProperty ) . "' WHERE uid = " . $user [ 'id' ] ; $pdo -> query ( $linko ) ;
}
$Wolf -> send ( "вы успешно приобрели - " . $row [ 'name' ] ) ;
}
}
}
Vladimir Kheifets
Отправлено: 10 Ноября, 2019 - 13:44:45
Частый посетитель
Покинул форум
Сообщений всего: 879
Дата рег-ции: Март 2017
Откуда: Германия, Бавария
Помог: 37 раз(а)
Sasha777 пишет: Notice: Undefined index: property
Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
global $pdo ;
$info = [ "машины" => 1 , "машыны" => 1 , "яхты" => 2 , "самолеты" => 3 , "самолёты" => 3 , "самалёты" => 3 , "самалеты" => 3 , "верталёты" => 4 , "верталеты" => 4 , "вертолёты" => 4 , "вертолеты" => 4 , "дома" => 5 , "квартиры" => 6 , "телефоны" => 7 , "фермы" => 8 , "бизнесы" => 9] ;
$propertyCount = "SELECT COUNT(1) FROM property WHERE type = " . $propertyID . "'" [ 0] ;
$sql = "SELECT * FROM accounts WHERE uid = " . $user [ 'id' ] ;
$result = $pdo -> query ( $sql ) ;
foreach ( $result as $rew ) {
$result = "SELECT * FROM property WHERE type = " . $propertyID ; $msg = "список:<br>" ;
$res = $pdo -> query ( $result ) ;
while ( $row = $res -> fetch ( PDO:: FETCH_BOTH ) ) { $msg .= $row [ 'pid' ] . '. ' . $row [ 'name' ] . ' - ' . $row [ 'cost' ] . '$<br>' ; }
$Wolf -> send ( $msg . "Для покупки введите <<" . $params [ 1 ] . " [номер]>>" ) ;
}
else {
$res = "SELECT * FROM property WHERE type = " . $propertyID . " AND pid = " . $params [ 2] ;
$result = $pdo -> query ( $res ) ;
foreach ( $result as $row ) {
if ( $rew [ 'money' ] < $row [ 'cost' ] ) { $Wolf -> send ( "у вас недостаточно денег" ) ; return ; }
if ( $propertyID == 8) {
$userFerm = explode ( '&' , $row [ 'ferm' ] ) ; if ( empty ( $params [ 3
] ) && ( $row [ 'money' ] < ( $params [ 3
] * $row [ 'cost' ] ) || $params [ 3
] <= 0
) ) { $Wolf -> send ( "у вас недостаточно денег" ) ; return ; } elseif ( $userFerm [ 0] != 0 && $userFerm [ 0] != $params [ 2] ) { $Wolf -> send ( "вы не можете купить разные фермы" ) ; return ; }
$link = "UPDATE accounts SET money = (money + " . $params [ 2] ? - ( $row [ 'cost' ] * $params [ 2] ) : - ( $row [ 'cost' ] ) . ") WHERE uid = " . $user [ 'id' ] ;
$pdo -> query ( $link ) ;
$userFerm [ 0] = $params [ 2] ;
$userFerm [ 1] += ( $params [ 3] ? $params [ 3] : 1) ;
if ( $userFerm [ 2
] == 0
) $userFerm [ 2
] = time ( ) ;
$lin = "UPDATE accounts SET money = (money - '" . ( $params [ 3
] ?
- ( $row [ 'cost' ] * $params [ 3
] ) : - ( $row [ 'cost' ] ) ) . "'), ferm = '" . join ( '&' , $userFerm ) . "' WHERE uid = " . $user [ 'id' ] ; $pdo -> query ( $lin ) ;
} elseif ( $propertyID == 9) {
$userBusiness = explode ( '&' , $row [ 'business' ] ) ; if ( $userBusiness [ 0] != 0) { $Wolf -> send ( "у вас уже есть бизнес!" ) ; return ; }
$userBusiness [ 0] = $params [ 2] ;
$userBusiness [ 3
] = time ( ) ;
$linki = "UPDATE accounts SET money = (money - '" . $row [ 'cost' ] . "'), business = '" . join ( '&' , $userBusiness ) . "' WHERE uid = " . $user [ 'id' ] ; $pdo -> query ( $linki ) ;
} else {
$userProperty = explode ( '&' , $row [ 'property' ] ) ; if ( $userProperty [ $propertyID ] != 0) { $Wolf -> send ( "у вас уже есть данное имущество" ) ; return ; }
$userProperty [ $propertyID ] = $row [ 'name' ] ;
$linko = "UPDATE accounts SET money = (money - '" . $row [ 'cost' ] . "'), property = '" . join ( '&' , $userProperty ) . "' WHERE uid = " . $user [ 'id' ] ; $pdo -> query ( $linko ) ;
}
$Wolf -> send ( "вы успешно приобрели - " . $row [ 'name' ] ) ;
}
}
}
Добрый день!
Сообщение выдаётся потому, что здесьв $params[1] нет одного из ключей массива $info
Если массив $params не потерялся случайно, то желательно вставить в код проверкуСпойлер (Отобразить ) PHP:
скопировать код в буфер обмена
<?PHP
$info = [ "машины" => 1 , "машыны" => 1 , "яхты" => 2 , "самолеты" => 3 , "самолёты" => 3 , "самалёты" => 3 , "самалеты" => 3 , "верталёты" => 4 , "верталеты" => 4 , "вертолёты" => 4 , "вертолеты" => 4 , "дома" => 5 , "квартиры" => 6 , "телефоны" => 7 , "фермы" => 8 , "бизнесы" => 9] ;
{
$propertyID = $info [ $infoKey ] ;
//Ваш код
................................
................................
}
else
{
//Ваш обработчик ошибки
}
?>
Удачи!
Поиск в теме | Версия для печати
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
Powered by ExBB FM 1.0 RC1. InvisionExBB