0

Translated

I am new to coding and for one of my classes I have to make a map with markers. I have a database but I can not make it a geojson code to be able to display this data on my map. When I test my code, here is the error displayed (which I think is not the only one ^^);

Original Qustion

Je suis novice en codage et pour l'un de mes cours je dois réaliser une carte avec des marqueurs. J'ai une base de données mais je n'arrive pas à faire de celle-ci un code geojson pour pouvoir par la suite afficher ces données sur ma carte. Quand je teste mon code, voilà l'erreur affichée (qui je pensen'est pas la seule^^);

Parse error: syntax error, unexpected 'FROM' (T_STRING), expecting '[' in /home/marine27-11/www/recup.php on line 31

Voici mon code:

<?php // Connection à la base de données
try {
        $dbconn=new PDO("pgsql:host='postgresql-marine27-11.alwaysdata.net'; dbname='marine27-11_hotel';user='marine27-11';password='Marine27Peslier'") or die('Connexion impossible');
        $dbconn->exec("SET CHARACTER SET utf8");
        $dbconn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
// S'il existe un problème de connection, on obtient le message d'erreur
} catch(PDOException $erreur) {
        $erreur->getMessage(); // Supprimer en production
        echo 'erreur';
}
if($dbconn){
    $sqlCount="SELECT gid FROM matable";
    $reqCount=$dbconn->prepare($sqlCount);
    $reqCount->execute();
    $nbObjet=$reqCount->rowCount();
    if($nbObjet>0){
    // Exécution de la requête SQL GeoJSON
        foreach($sql='SELECT*FROM mabase' (json_build_object(
    'type', 'FeatureCollection',
    'crs',  json_build_object(
        'type',      'name',
        'properties', json_build_object(
        'id','latitude','longitude')),

    'features', json_agg(
        json_build_object(
            'type',       'Feature',
            'id',         gid,
            'geometry',   ST_AsGeoJSON(geom)->json,
            'properties', json_build_object(
                'latitude','longitude'
                 )
        )
    )
)
)AS feature
FROM (
    SELECT * FROM matable
    ) inputs
) features;
    $req=$dbconn->prepare($sql);
    $req->execute(); 
    $data=$req->fetch();
    if($data){
        $objet_geosjon=$data('objet_geosjon');
        // Ouverture du fichier en écriture
        $fichier = fopen("matable.geojson", "w") or die("Problème d\'ouverture de fichier");
        // Ecriture du résultat de la requête
        if(fwrite($fichier, $objet_geosjon)){
            echo "Le fichier GeoJSON a été construit correctement!";
        }else{
            echo "Un problème s\'est déroulé lors de l\'écriture du fichier.";
        }
        // Fermeture du fichier
        fclose($fichier);
    }else{
        echo "Un problème s\'est déroulé lors du chargement de la donnée.";
    }
}
?>
  • Welcome to GIS stack exchange, the community is mostly english speaking, in order to avoid closing your question it would be better to ask it in english :) if you need help with that I'll edit it for you – Hicham Zouarhi Mar 13 at 12:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.