Ciao a tutti,

ho una query:
codice:
function  getStarshipTeam($starship_id) {
            global $db;
            $q = "SELECT u.nome, u.cognome
                  FROM users u, user_props
                  WHERE user_props.starship_id=?
                  AND user_props.id_user=u.id_user
                  ORDER BY u.cognome ASC
                  ";


            $crew = [];
            if($stmt = $this->conn->prepare($q)) {
                $stmt->bind_param("i", $starship_id);
                $stmt->execute();
                $stmt->bind_result($nome, $cognome);
                while ($stmt->fetch()) {
                    array_push($crew, $nome." ".$cognome);
                }
            }
            else {
                die('error');
            }
            return $crew;
        }
che in mysql workbench funziona, ma runnata da funzione non va.
non riesco a wrappare l'errore, non ho log di sistema, nulla...

la funzione è un $result di un'altra query che chiama una select (la funzione sopra) tramite loop:
codice:
function starshipList() {			$q = "SELECT * FROM starship";
			$ss = [];
			$starship['starship'] = [];
			if($stmt = $this->conn->prepare($q)) {
				$stmt->execute();
				$stmt->bind_result($ss_id, $ss_name, $ss_logo, $ss_quota, $ss_date, $has_crew);
				$starship['status'] = 'ok';
				$i = 0;
				while ($stmt->fetch()) {
					$ss['ss_id'] = $ss_id;
					$ss['ss_name'] = $ss_name;
					$ss['ss_logo'] = $ss_logo;
					$ss['ss_quota'] = $ss_quota; 
					$ss['ss_date'] = $ss_date;
					$ss['crew'] = $this->getStarshipTeam($ss_id); //<-- tacci sua
					$i++;
					array_push($starship['starship'], $ss);
				}
			}
			else {
				$starship['status'] = 'ko';
				$starship['error'] = 'qualche problema in hangar';
			}
			$this->conn->close();
			return json_encode($starship);
		}
mi aiutate??