Fetch возвращает неопределенное значение каждый раз, когда вы используете его на локальном компьютере, но на сервере он Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Fetch возвращает неопределенное значение каждый раз, когда вы используете его на локальном компьютере, но на сервере он

Сообщение Anonymous »

Когда я использую свой код для извлечения базы данных на своем сервере, он работает нормально и возвращает все в порядке, но когда я запускаю этот проект на локальном компьютере, он просто возвращает «неопределенное», ни сбоя, ни ошибки, просто неопределенное.
Это происходит только тогда, когда я выполняю выборку с локального хоста на локальный хост, когда я получаю доступ к URL-адресу своего сервера и использую страницу, все работает отлично. Никакой искусственный интеллект не сможет решить эту проблему, поэтому я буду ждать помощи профессионалов на этой странице.
Я был бы очень признателен, если бы кто-нибудь мне помог.
Я хочу, чтобы данные возвращались из класса de Persistance в логику и из логики для выборки, они используются для получения продуктов из базы данных. Я использую Apache с сервером Ubuntu на своем сервере и Wamp с Windows для локального запуска. Я изменил данные из Db Connection на локальные, например, localhost и root без pwd по умолчанию, а также маршруты выборки на локальный хост.
Извлечение очень простое, вот оно:
async function listar_Visible() {
try {
const telolistovisibleloco = await fetch(
"",
{
method: "POST",
headers: { "Content-Type": "Application/json" },
body: JSON.stringify({ accion: "listarProductosVisibles" }),
}
);
const resultado = await telolistovisibleloco.json();

if (resultado.exito) {
console.log(resultado.mensaje);
productosGlobal = resultado.productos;
mostrarProductosVisiblesEnTabla(resultado.productos);
} else {
console.log(resultado.mensaje);
alert(resultado.mensaje);
}
} catch (error) {
console.log("Error:", error);
}
}

Логика листинга PHP
public function listarProductoVisible($hash)
{
$data = json_decode(file_get_contents("php://input"), true);
$accion = $data['accion'] ?? '';
if ($accion == "listarProductosVisibles") {
$pBD = new productoBD;
$productos = $pBD->listarProductoVisible();
$arrayProductosConHash = [];
foreach ($productos as $producto) {
$arraytemp = $producto->toArray();
$atributosparahashear = $arraytemp['idProducto'] . '|' . $arraytemp['precioVentaProducto'] . '|' . $arraytemp['stockProducto'];
$arraytemp['hash'] = hash_hmac('sha256', $atributosparahashear, $hash);
$arrayProductosConHash[] = $arraytemp;
}
$telolistovisibleloco = [
'exito' => true,
'mensaje' => 'se recibio el fetch',
'productos' => $arrayProductosConHash
];
} else {
$telolistovisibleloco = [
'exito' => false,
'mensaje' => 'Hubo problemas'
];
}
echo json_encode($telolistovisibleloco);
}

Постоянство списка PHP
public function listarProductoVisible(){
try{
$conexionBD = $this->getConexion();
$sql = "SELECT p.*, i.Img_Prod
FROM producto p
LEFT JOIN img_producto i ON p.ID_Producto = i.ID_Producto
WHERE p.Estado = 1";
$stmt = $conexionBD->prepare($sql);
$stmt->execute();
$resultado = $stmt->get_result();
unset($_SESSION['productoVisible']);
if($resultado->num_rows > 0){
while ($fila = $resultado->fetch_assoc()){
$producto = new Producto;
$producto->setFotubi($fila['Img_Prod']);
$producto->setIdProducto($fila['ID_Producto']);
$producto->setCategoriaProducto($fila['Categoria']);
$producto->setPrecioCompraProducto($fila['Precio_Compra']);
$producto->setPrecioVentaProducto($fila['Precio_Venta']);
$producto->setNombreProducto($fila['Nombre']);
$producto->setDescripcionProducto($fila['Descripcion']);
$producto->setStockProducto($fila['Stock']);
$producto->setEstadoProducto($fila['Estado']);
$_SESSION['productoVisible'][] = $producto;
}
}
return $_SESSION['productoVisible'];
}
catch(Exception $e){
echo "alert('Problemas con la base de datos!')";
echo "console.log($e)";
}
}


Подробнее здесь: https://stackoverflow.com/questions/798 ... er-it-work
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»