#1 Sat 24 August 2013 13:14
- araking
- Participant actif
- Date d'inscription: 8 Jul 2013
- Messages: 83
fichier php avec format geoJson
Bonjour,
je voudrais retourner l'mage d'une region qui se colore grace l'ajout d'un vecteur,pour y arriver je me suis recouru au format geoJson mais dans mon navigateur quand j'entre le nom de l'endroit à colorer il me renvoit le fchier php,franchement je connais preque rien en php,j'a fait un effort à écrire ce fichier grace aux exmples sur net j'ai besoin d'un aide svp
Code:
<?php $db = pg_connect("host=localhost port=5433 dbname=template_postgis user=postgres password=tarek"); $sql = "SELECT ST_AsGeoJSON(geom) AS geo FROM tun_adm2 where name_1='$_POST[sliderValue]' " ; // Connect to database // Perform database query $query = pg_query($dbcon,$sql); // Return streets as GeoJSON $geojson = array( 'type' => 'FeatureCollection', 'features' => array() ); // Add edges to GeoJSON array while($row=pg_fetch_array($query)) { $feature = array( 'type' => 'Feature', 'geometry' => array( 'type' => 'Point', 'coordinates' => array($row[1], $row[2]) ), 'properties' => array( 'gid' => $row[0], 'name_1' => $row[3] ) ); // Add feature array to feature collection array array_push($geojson['features'], $feature); } // Close database connection pg_close($dbcon); // Return result header('Content-type: application/json',true); echo json_encode($geojson); ?>
dans le fichier html
Code:
json_layer = new OpenLayers.Layer.Vector("GeoJSON", { strategies: [new OpenLayers.Strategy.Fixed()], protocol: new OpenLayers.Protocol.HTTP({ url:"http://localhost/home/projet1/extent.php", format: new OpenLayers.Format.GeoJSON() }) }); // Add our vector layer to the map map.addLayer(json_layer);
Code:
<form action="extent.php" method="POST" name="form"> <table cellpadding="0"> <tr> <td> <p>Region:</p> </td> <td> <input name="sliderValue" id="sliderValue" type="Text" size="10"> </td> </tr> <tr> <td> <input name="Submit" type="Submit" value="Submit"> </td> </tr> </table> </form>
Hors ligne
#2 Sat 24 August 2013 15:52
- araking
- Participant actif
- Date d'inscription: 8 Jul 2013
- Messages: 83
Re: fichier php avec format geoJson
j'ai changé le code php comme suit mais toujours la même erreur un clique sur le bouton me renvoit le fichier php
Code:
<?php $dbconn = pg_connect("host=localhost dbname=template_postgis user=postgres password=tarek"); $requete = "SELECT gid, ST_ASGeoJSON(geom) AS geojson FROM tun_adm2 wherename_1='$_POST[sliderValue]'"; $result = pg_query($dbconn,$requete); $Resultats = array('type'=> 'FeatureCollection', 'features' => array()); $compteur = 0; while ($row = pg_fetch_assoc($result)) { //Je rajoute un feature avec geométrie et propriétés nulles pour l'instant $Resultats['features'][$compteur] = array('type' => 'feature', 'geometry' => Null, 'properties' => Null); $Resultats['features'][$compteur]['geometry'] = row['geojson']; $Resultats['features'][$compteur]['properties']['code_gouv'] = row['gid']; $compteur ++; //Incrémentation du compteur } pg_free_result($requete); header('Content-type: application/json',true); //Affichage de json grâce à la fonction magique echo json_encode($Resultats); ?>
Dernière modification par araking (Sat 24 August 2013 15:52)
Hors ligne
#3 Sat 24 August 2013 16:28
- zinat
- Participant occasionnel
- Date d'inscription: 6 Aug 2013
- Messages: 31
Re: fichier php avec format geoJson
Bonjour,
vérifiez si la connexion à votre base de données est bien établie
pour se faire c'est mieux de le faire dans une page à part et de l'inclure par la suite avec la fonction require dans votre page php
Hors ligne
#4 Sun 25 August 2013 11:45
- Nicolas Ribot
- Membre
- Lieu: Toulouse
- Date d'inscription: 9 Sep 2005
- Messages: 1554
Re: fichier php avec format geoJson
Bonjour,
Si la page PHP est renvoyée au lieu d'etre interprétée, cela veut surement dire que PHP n'est pas (ou mal) installé sur le serveur web que vous utilisez.
Comment avez-vous installé PHP ? avez-vous redémarré le serveur Web apres l'installation ?
Pour tester, vous pouvez créer une page PHP (par ex: info.php) renvoyant la configuration PHP:
Code:
<?php phpinfo(); ?>
Et l'appeler depuis le navigateur: localhost/info.php
Nicolas
Hors ligne
#5 Mon 26 August 2013 17:58
- araking
- Participant actif
- Date d'inscription: 8 Jul 2013
- Messages: 83
Re: fichier php avec format geoJson
Bonjour,
malheureusement la configuration du serveur n'est pas bonne même avec l'installation du lamp ça pas marcher malgré mon apache est bien installé
avec les librairies nécissaire pour xampp il me faut désinstaller php5 et apache2 ce que je pense n'est pas bon pour mapserver
Hors ligne
#6 Wed 28 August 2013 22:03
- michel56
- Participant assidu
- Lieu: Lorient
- Date d'inscription: 14 Jul 2012
- Messages: 474
Re: fichier php avec format geoJson
Bonsoir,
Tu travailles sous linux je pense, LAMP!!
Regarde dans la documentation de ta distribution il y a peut-être un bug avec LAMP.
Opérateur cartographique & DAO & PHP.
Hors ligne
#7 Mon 09 September 2013 14:38
- araking
- Participant actif
- Date d'inscription: 8 Jul 2013
- Messages: 83
Re: fichier php avec format geoJson
Bonjour,
j'ai essayé sous windows avec $_POST il me renvoit le résultat du script php au lieu du vecteur
Hors ligne