Bonjour à tous, j'ai mis en ligne l'ensemble des fichiers du site e-commerce (lechaidepont.fr), et impossible de voir un seul article sur les pages. En local ça fonctionne très bien… Quelqu'un a une idée pour résoudre ce soucis ? Svp
lechaidepont.fr
Bonjour @c81c11fd154151a248a0
Site réalisé à partir d'un CMS ?
Si OUI, lequel.
Etes-vous l'agence webgencia ?
Si NON, adressez-vous de préférence à elle.
lechaidepont.fr
Bonjour,
wines.js -> Error fetching product data: SyntaxError: JSON.parse: unexpected end of data at line 1 column 1 of the JSON data
dans la ligne:
.catch(error => {
console.error('Error fetching product data:', error);
Idem sur whiskys.mjs:117:15 et whiskys.mjs:168:15
The script from “https://www.lechaidepont.fr/js/whiskys.mjs” was loaded even though its MIME type (“”) is not a valid JavaScript MIME type.
idem pour rhums
Il va falloir débugguer votre programmation.
Bonjour, tout est codé en HTML / CSS / JS et PHP.
Oui, je viens de créer le compte community…
Site codé en HTML, CSS, JS et PHP. Je suis bien dev à Webgencia, problème jamais rencontré auparavant…
Je sais bien ce que dit la console, mon problème est ici justement. En local je n'ai pas ces erreurs, mais en ligne oui. En local tout fonctionne très bien
En local je n'ai pas ces erreurs, mais en ligne oui
A un utilisateur, le lui dirais de contacter son développeur. Voilà qui est fait. Il faut débugguer.
Bonjour, c'est code HTML CSS JS et PHP. Je viens de créer le compte, je suis bien dev à Webgencia, je n'avais encore jamais rencontré ce problème au paravant.
Merci pour ta réponse qui est donc de trouver une solution, c'est la raison pour laquelle j'ai écris ce post…
Comment construisez-vous cette réponse JSON qui ne vient pas ou qui est vide ?
De cette façon, voici par exemple le fichier php pour afficher les data whisky :
include 'database.php';
$page = isset($_GET['page']) ? intval($_GET['page']) : 1;
$perPage = 30;
$offset = ($page - 1) * $perPage;
try {
error_reporting(E_ALL);
ini_set('display_errors', '1');
$countQuery = "SELECT COUNT(*) as total FROM products_spirituous WHERE family IN ('Whisky Blended', 'Whisky Cask', 'Whiskey', 'Whisky', 'Bourbon', 'Grain / Rye')";
$countStatement = $db->query($countQuery);
$totalCount = $countStatement->fetch(PDO::FETCH_ASSOC)['total'];
$query = "SELECT * FROM products_spirituous WHERE family IN ('Whisky Blended', 'Whisky Cask', 'Whiskey', 'Whisky', 'Bourbon', 'Grain / Rye') LIMIT :offset, :perPage";
$statement = $db->prepare($query);
$statement->bindValue(':offset', $offset, PDO::PARAM_INT);
$statement->bindValue(':perPage', $perPage, PDO::PARAM_INT);
$statement->execute();
$data = ;
while ($row = $statement->fetch(PDO::FETCH_ASSOC)) {
if (!empty($row['picture_product'])) {
$encodedImage = base64_encode($row['picture_product']);
$row['encodedImage'] = $encodedImage;
unset($row['picture_product']);
}
$data = $row;
}
$statement->closeCursor();
echo json_encode(['totalCount' => $totalCount, 'data' => $data]);
} catch (PDOException $e) {
echo json_encode(['error' => 'Erreur lors de l'exécution de la requête : ' . $e->getMessage()]);
} catch (Exception $e) {
echo json_encode(['error' => 'Une erreur inattendue s'est produite : ' . $e->getMessage()]);
}
?>
voici par exemple
pouvez-vous reposter en utilisant correctement cette balise
Puis ensuite j'ai le js qui les traite de cette façon :
fetch('../php/data-products-whisky.php')
.then(response => {
if (!response.ok) {
throw new Error(`HTTP error! Status: ${response.status}`);
}
return response.json();
Je ne suis pas développeur et vous êtes certainement plus calé que moi.
Pour vous situer ma tranche d'âge on apprenait le cobol pendant les études.
voici mon php :
include 'database.php';
$page = isset($_GET['page']) ? intval($_GET['page']) : 1;
$perPage = 30;
$offset = ($page - 1) * $perPage;
try {
error_reporting(E_ALL);
ini_set('display_errors', '1');
$countQuery = "SELECT COUNT(*) as total FROM products_spirituous WHERE family IN ('Whisky Blended', 'Whisky Cask', 'Whiskey', 'Whisky', 'Bourbon', 'Grain / Rye')";
$countStatement = $db->query($countQuery);
$totalCount = $countStatement->fetch(PDO::FETCH_ASSOC)['total'];
$query = "SELECT * FROM products_spirituous WHERE family IN ('Whisky Blended', 'Whisky Cask', 'Whiskey', 'Whisky', 'Bourbon', 'Grain / Rye') LIMIT :offset, :perPage";
$statement = $db->prepare($query);
$statement->bindValue(':offset', $offset, PDO::PARAM_INT);
$statement->bindValue(':perPage', $perPage, PDO::PARAM_INT);
$statement->execute();
$data = ;
while ($row = $statement->fetch(PDO::FETCH_ASSOC)) {
if (!empty($row['picture_product'])) {
$encodedImage = base64_encode($row['picture_product']);
$row['encodedImage'] = $encodedImage;
unset($row['picture_product']);
}
$data = $row;
}
$statement->closeCursor();
echo json_encode(['totalCount' => $totalCount, 'data' => $data]);
} catch (PDOException $e) {
echo json_encode(['error' => 'Erreur lors de l'exécution de la requête : ' . $e->getMessage()]);
} catch (Exception $e) {
echo json_encode(['error' => 'Une erreur inattendue s'est produite : ' . $e->getMessage()]);
}
?>
En tout cas je vous remercie d'avoir tenté de m'aider ! Ce fut un plaisir. J'espère avoir une reponse de quelqu'un qui va trouver la lumière sur mon problème
Vous êtes fâché avec
me semble-t-il.
texte préformaté indenté par 4 espaces
include 'database.php';
$page = isset($_GET['page']) ? intval($_GET['page']) : 1;
$perPage = 30;
$offset = ($page - 1) * $perPage;
try {
error_reporting(E_ALL);
ini_set('display_errors', '1');
$countQuery = "SELECT COUNT(*) as total FROM products_spirituous WHERE family IN ('Whisky Blended', 'Whisky Cask', 'Whiskey', 'Whisky', 'Bourbon', 'Grain / Rye')";
$countStatement = $db->query($countQuery);
$totalCount = $countStatement->fetch(PDO::FETCH_ASSOC)['total'];
$query = "SELECT * FROM products_spirituous WHERE family IN ('Whisky Blended', 'Whisky Cask', 'Whiskey', 'Whisky', 'Bourbon', 'Grain / Rye') LIMIT :offset, :perPage";
$statement = $db->prepare($query);
$statement->bindValue(':offset', $offset, PDO::PARAM_INT);
$statement->bindValue(':perPage', $perPage, PDO::PARAM_INT);
$statement->execute();
$data = ;
while ($row = $statement->fetch(PDO::FETCH_ASSOC)) {
if (!empty($row['picture_product'])) {
$encodedImage = base64_encode($row['picture_product']);
$row['encodedImage'] = $encodedImage;
unset($row['picture_product']);
}
$data = $row;
}
$statement->closeCursor();
echo json_encode(['totalCount' => $totalCount, 'data' => $data]);
} catch (PDOException $e) {
echo json_encode(['error' => 'Erreur lors de l'exécution de la requête : ' . $e->getMessage()]);
} catch (Exception $e) {
echo json_encode(['error' => 'Une erreur inattendue s'est produite : ' . $e->getMessage()]);
}
?>
texte préformaté indenté par 4 espaces
Rien ne fonctionne aujourd'hui, j'ai essayé mais je n'y parviens pas. Quel mascarade aujourd'hui…
j'ai essayé
sélectionner le texte du code, cliquer sur le bouton.
C'est comme ça dans à peu près tous les forums web.