У меня есть функция, которая может создавать различные типы соединений с базой данных, и, упрощенно ниже с двумя такими значениями $ ActionType, это вторая проблема, с которой у меня возникают трудности.Нет ошибок, но нет результатов.Любые идеи?
Запрос содержит несколько запросов, таких как:
$Query = "SQL statement #1;";
$Query .= "SQL statement #2;";
$Query .= "SQL statement #3;";
, и это функция, сокращенная, чтобы соответствовать здесь:
function DBConnect($Query, $ActionType, $DBname, $selType='array') {
$ActionType = trim(strtolower($ActionType));
if (!$Query) :
exit();
endif;
$MySQLError = "";
$mysqli = dbConn($DBname);
if ($Query && $mysqli->connect_errno != 0):
$MySQLError = "<div class=\"ErrorMessage\">";
$MySQLError .= printf("Connect failed: %s\n", $mysqli->connect_error);
$MySQLError .= "</div>\n\n";
return $MySQLError;
exit();
endif;
switch ($ActionType) :
case "multiple":
if ($result = $mysqli->query($Query)) :
$numrowsCat = $result->num_rows;
if ($numrowsCat >= 1) :
$result = $mysqli->query($Query);
if ($selType === "assoc") :
while($row = $result->fetch_assoc()) :
$results_array[] = $row;
endwhile;
else :
while($row = $result->fetch_array()) :
$results_array[] = $row;
endwhile;
endif;
return $results_array;
endif;
$MySQLError = ($mysqli->connect_errno) ? mysqli_error($mysqli) : "";
$mysqli->close();
if ($MySQLError) return $MySQLError;
endif;
break;
case "multiquery":
if ($result = $mysqli->multi_query($Query)) :
if ($result) :
while($row = $result->fetch_array()) :
$results_array[] = $row;
endwhile;
return $results_array;
endif;
$MySQLError = ($mysqli->connect_errno) ? mysqli_error($mysqli) : "";
$mysqli->close();
if ($MySQLError) return $MySQLError;
endif;
break;
endswitch;
}