J'ai un serveur wamp d'installer, j'ai creer un dossier à la racine du serveur et j'y ai crée un fichier javascript;
J'essaye de recuperer des données dans mon serveur local avec l'url de phpMyAdmin.
Mais cela ne fonctionne pas, Est-il seulement possible de le faire, sans ecrire au prealabre une api ?
ps: je ne sais pas en faire.

const response = await fetch('http://localhost/phpmyadmin/index.php?route=/sql&db=test&table=pierre&pos=0',
{
headers: {
     Accept: 'application/json;charset=utf-8',
     },
mode: 'no-cors' })

if(!response.ok) {
    throw new Error('Erreur du serveur')
}

Ce que je veux

Obtenir les informations de ma base au format json

Ce que j'obtiens

L'exception est rejettée à chaque execution

5 réponses


which line ?

Hello :)

Pour commencer: cecile est un bot (message + lien bizarre = bot, si le message réponds à ton message = bot + chatGPT)

Ensuite, pour accéder à phpmyadmin, il faut passer par http://localhost/phpmyadmin (sans index.php)

Ensuite... Tu as quoi comme message d'erreur?

Je pense que l'erreur vient du fait qu'il faut se connecter à la base, il faudrait que tu ajoutes le user/pwd dans ta requete:

fetch("http://localhost/phpmyadmin", { username: "root", password: "pwd" })

Commences au plus simple: Avant d'essayer de tirer les données, essayes de te connecter à la base en html

Bon après c'est sur que une API ce serait mieux, et ce serait la façon classique de faire

Alors au cas ou pas le choix faut une API tu peux essayer cette API:

// api_mysql.php

// On crée le tableau a renvoyer
$result = [];

// Connexion à la database
$pdo = new PDO("mysql:host=localhost;dbname=le_nom_de_ta_base", 'ton_username', 'ton_password');

// Tu récupères ce que tu veux dans la requete SQL
$query = $pdo->query("SELECT * FROM ta_table");

// On pousse les données dans le tableau
foreach ($query as $row) {
   array_push($result, $row);
}

// On renvoie le résultat
return $result;

Et le JS

fetch('http://localhost/api_mysql.php')
    .then((response) => {
        console.log(response) // response = le tableau
    })

merci de ta réponse j'ai essayé ce que tu m'as dit avec le php je pense que l'api marche mais ça ne fonctionne pas quand j'utilise

Tu as une erreur coté PHP ou JS?

C'est quoi le message d'erreur? (dispo dans la console du navigateur)

merci pour ton aide popotte j'ai réglé le soucis et j'ai utilisé la fonction json_encode pour encoder le tableau au format json et après j'ai effectué un echo au lieu d'un return. merci vraiment !