alors voilà, j'essai depuis 2 jours de récupérer une valeur d'une liste déroulante pour l'intégrer dans une requête. J'utilise Ajax pour ne pas à avoir à recharger la page.
Le principe : l'utilisateur choisi une couche, et dynamiquement les enregistrements de cette couche s'affichent en dessous. Mon ajax est bon, je pense. Mon problème c'est que je ne sais pas pourquoi mais le navigateur, dans le firebug ou dans chroom m'indique toujours sur ma requête :
Notice: Undefined index: list_other in C:\Users\postgres\Documents\smiddest\result.php on line 8
Warning: PDOStatement::execute(): SQLSTATE[42601]: Syntax error: 7 ERREUR: erreur de syntaxe à la fin de l'entrée LINE 1: select * from other_map. ^ in C:\Users\postgres\Documents\smiddest\result.php on line 11
Voici mes codes :
Ajax :
Code : Tout sélectionner
$(".button-collapse").sideNav();
$(document).ready(function(){
chargerCouches();
});
function chargerCouches(){
$.get("list.php",function(reponse){
$(".return").html(reponse);
$("list_other").change(function(){
chargerTableau($(this).val());
});
});
}
function chargerTableau(Na){
$.get("result.php?names="+Na,function(reponse){
$(".afficher").html(reponse);
});
}
Page result.php :
Code : Tout sélectionner
<?php
require_once("connect.php");
?>
<?php
include ('profil.php');
$names = $_GET['list_other'];
$req = "select * from other_map.$names";
$reqs = $bdd->prepare($req);
$reqs->execute();
$re = $reqs->fetchAll();
?>
<table border="1">
<tr>
<th>Date</th>
<th>Remarque</th>
</tr>
<?php
foreach ($re as $res) {
?>
<tr>
<td><?php echo $res['date']; ?></td>
<td><?php echo $res['remarq']; ?></td>
</tr>
<?php
}
?>
Code : Tout sélectionner
<?php
include("connect.php");
$listes = $bdd->prepare("WITH mytables AS (SELECT tablename,schemaname FROM pg_tables WHERE schemaname = 'other_map')
SELECT tablename, d.description FROM mytables
JOIN pg_class c ON tablename = c.relname
JOIN pg_description d ON d.objoid = c.oid
WHERE d.objsubid = 0
ORDER BY tablename ASC");
$listes->execute();
$arrListe = $listes->fetchall();
?>
<select name="list_other" id='list_other' class='browser-default'>
<OPTION value=''>Couches</OPTION>
<?php
foreach($arrListe as $L) {
$table_name = $L['tablename'];
$schema_name = $L['description']; ?>
<OPTION VALUE="<?php echo $table_name ?>"> <?php echo $schema_name ?> </OPTION>\n;
<?php } ?>
</select>Code : Tout sélectionner
<?php
session_start();
include("connect.php");
if(isset($_GET['id']) AND $_GET['id'] > 0) {
$getid = intval($_GET['id']);
$requser = $bdd->prepare('SELECT * FROM base.membres WHERE mem_id = ?');
$requser->execute(array($getid));
$userinfo = $requser->fetch();
?>
<html>
<head>
<meta charset="utf-8" name="viewport" content="width=device-width, initial-scale=1.0">
<title>Smiddest</title>
<link type="text/css" rel="stylesheet" href="css/jquery-ui.css">
<link rel="stylesheet" href="http://openlayers.org/en/v3.17.1/css/ol.css" type="text/css">
<link rel="stylesheet" href="css/ol3-layerswitcher.css">
<link href="http://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<link type="text/css" rel="stylesheet" href="css/materialize.css" media="screen,projection">
<link type="text/css" rel="stylesheet" href="css/main.css">
<link type="text/css" rel="stylesheet" href="css/ol3-popup.css">
</head>
<body>
<?php
if(isset($_SESSION['mem_id']) AND $userinfo['mem_id'] == $_SESSION['mem_id']) {
?>
<header>
<?php include 'header.php' ?>
</header>
<main>
<div class="row">
<div class="col s8 m8 l8">
<div id="map" class="map"></div>
<div id="popup" class="ol-popup">
<a href="#" id="popup-closer" class="ol-popup-closer"></a>
<div id="popup-content"></div>
</div>
</div>
<div class="col s4 m4 4">
<div class="col s6 m6 l6"></div>
<div class="col s6 m6 l6">
<?php
$date = date("d/m/Y");
Print('<div class="heure">' . "$date" . '</div>');
?>
</div>
<div class="other">
<div>
<div class='return'></div>
</div>
<div>
produits :
<div class="afficher">
</div>
</div>
</div>
</div>
</div>
</div>
</main>
<!-- Fin du isset -->
<?php
}
?>
<script src="libs/ol-debug.js" type="text/javascript"></script>
<script src="libs/ol3-layerswitcher.js" type="text/javascript"></script>
<script type="text/javascript" src="libs/jquery-3.1.0.js"></script>
<script type="text/javascript" src="libs/jquery-ui.js"></script>
<script src="libs/materialize.js"></script>
<script src="js/map.js"></script>
<script src="js/functions.js"></script>
</body>
</html>
<?php
}
?>