Нет, вы не можете.Имена таблиц и столбцов - синтаксис, значения - данные.Синтаксис не может быть параметризован.
Имя таблицы / столбца может быть безопасно вставлено непосредственно в строку, поскольку оно происходит из проверенного ограниченного набора допустимых имен таблиц / столбцов ( верно? ),Параметрами должны быть только пользовательские значения.
function fetchbyId($tableName,$idName,$id){
global $connection;
$stmt = mysqli_prepare($connection, "SELECT * FROM $tableName WHERE $idName = ?");
mysqli_stmt_bind_param($stmt,'i',$id);
$stmt = mysqli_stmt_execute($stmt);
mysqli_stmt_bind_result($name,$id);
$fetchArray = array();
while($row = mysqli_stmt_fetch($stmt)){
$fetchArray[] = $row;
}
return $fetchArray;
}