나는이 질문에 대한 답을 찾기 위해 높거나 낮게 검색했다. 나는 동료 코더들에게 너에게 다가 간다. :-)MySQL에서 반환 값을 확인하는 방법 -> prepare()
I 다음, 단순 해 보이는 PHP 코드가 있습니다
$query = "SELECT marketid, type, quantity, price, datetime, bundleid, state, stoplossprice FROM orders WHERE type = ? AND state = ?";
$stmt = $login->mySQLi->prepare($query);
if(!$stmt) {
throw new Exception(mysqli_error($login->mySQLi));
}
$stmt->bind_param("ss", $strOrderType, $strOrderState);
if($stmt)
{
if(!$stmt->execute())
{
// Return an error
}
}
$stmt->store_result();
$stmt->bind_result($marketid, $ordertype, $quantity, $buyprice, $buydatetime, $bundleid, $orderstate, $stoplossprice);
while ($stmt->fetch()) {
// Do something with the returned data
}
$stmt->close();
나는 또한 거의 동일한 코드를 여러 가지 다른 장소를
및 작동 다른 장소에서합니다. 그러나 어떤 이유 때문에 execute()
문을 실행할 때 종료됩니다.
또한 문을 실행 한 후 $stmt->affected_rows
은 -1과 같습니다.
값이 -1이면 "-1"은 쿼리가 오류를 반환했음을 의미합니다. 그러나, 나는 $stmt
에서 오류 메시지를 출력하는 방법을 알아낼 수 없습니다. $stmt->errno
및 $stmt->error
에는 값이 없습니다.
을 종료 오비완 케노비 도와주세요, 당신이 내 유일한 희망이야 (그리고 야아, 그것은 늦게, 나는 비트 썩을을 느낄 수있어)!141117 21시 21분 39초 (222) SELECT marketid, 종류, 수량, 가격, 날짜, bundleid, 주, stoplossprice 준비 FROM 주문 유형 =? AND 상태 =? 222 통계 223 통계
141,117 21시 21분 54초 222 통계
223 통계
141,117 21시 21분 55초 222 통계
223 통계
141,117 21시 21분 56초 222 통계
223 통계
141117 21:21:57 222 SELECT 실행 marketid, 유형, 수량, 가격, 날짜 시간, 번들, 상태, stoplossprice 주문 유형 = '구매'AND 상태 = '대기 중' 223 종료
222 닫기 stmt
실행 후 오류가 있는지 확인해야합니다. – sectus
'prepare'는 데이터베이스의 모든 행에 영향을 미치지 않으므로 -1 결과가 필요합니다. 'execute' 다음에 오류가 있는지 확인해야합니다. 오류가있는 경우 여기에 붙여 넣어 도움을 받으십시오. –
'$ stmt-> execute()'를 호출하면 프로그램이 예기치 않게 종료됩니다. 그래서, 나는'$ stmt-> execute()'에서 리턴 값을 볼 수 없다. 아마 원래의 질문에 이것을 포함시켜야했습니다. – MikeyE