Besoin d'aide pour la gestion espace membre des commerciaux en PDO
- Accueil
- Forum
- Programmation
- PHP
- Besoin d'aide pour la gestion espace membre des commerciaux en PDO
sasha Le 7 août 2016 à 01:26 (Édité le 25 janvier 2019 à 17:52)
En effet, ce que souhaiterais faire, c'est permettre au membre ( commercial) étant connecté de pouvoir voir sur sa session la liste des clients qu'il a inscrit, aussi pouvoir de ce fait à partir d'un formulaire enregistrer ses clients.
Merci beaucoup de votre aide et surtout à PrimFx pour ces tutos qui sont facile à comprendre.
TheOldNoob Le 10 août 2016 à 23:06 (Édité le 1 janvier 1970 à 01:00)
En gros, ce que tu souhaite faire, c'est que chacun de tes commerciaux puissent se loguer sur ton site, puis ajouter des clients dans leur site, ainsi que voir la liste de tout ses clients (peut-être aussi un formulaire de recherche...)?
Donc, tu doit créer sur ton site, un systeme assez simple d'utilisateur, avec nom, prénom, mail, mot de passe, etc..
Puis, une page avec un formulaire qui permettra d'inséré les informations de chaque clients afin dans ta base de données...
Puis, une page simple avec un tableau qui va afficher tout les clients de ton commercial.
La je dirais que tu a deux solution, soit tu créer une table client différentes pour chacun de tes commerciaux, soit tu créer une seule table clients, mais tu va devoir faire une jointure pour définir quel commercial a créer se clients afin de n'afficher que les clients de se commercial.
Il n'y a rien de trop compliquer, mais pour bien faire, tu va devoir aussi leur permettre d'edité un clients (en cas d'erreur de saisie).
sasha Le 14 août 2016 à 17:25 (Édité le 1 janvier 1970 à 01:00)
Merci pour ta réponse qui m'éclaire ,ainsi, ce que je souhaiterais faire c'est de permettre à chaque commercial d'afficher sa liste de clients qu'il aurait eu à enregistrer et le modifier.
<!-- PAGE afficher_liste_client.php -->
<?php
//require_once('include/dbconnect.php');
//connection au serveur
session_start();
if(!isset($_SESSION['id'])) {
header('Location: connexion.php');
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Liste de mes clients</title>
<script type="text/javascript" src="js/bootstrap.js"></script>
<script type="text/javascript" src="js/bootstrap.min.js"></script>
<link href="css/bootstrap.css" rel="stylesheet">
<link href="css/style.css" rel="stylesheet">
<link href="css/font-awesome.css" rel="stylesheet" type="text/css" />
<!-- Ionicons -->
<link href="css/ionicons.css" rel="stylesheet" type="text/css" />
<!-- Theme style -->
</head>
<body>
<nav class="navbar navbar-custom navbar-fixed-top ">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<a class="navbar-brand" href="accueil.php">AgoloCRM</a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li class="username"><a class="active" href="accueil.php"><span class="glyphicon glyphicon-user" aria-hidden="true"></span> <B>Salut <?php echo $_SESSION['pseudo']; ?> </B></a></li>
</ul>
<!--<ul class="nav navbar-nav navbar-left active">
<li class="active"><a href="client.php">Mes clients <span class="glyphicon glyphicon-userr" aria-hidden="true"></span></a></li>
</ul>-->
<ul class="nav navbar-nav navbar-left active">
<li class="active"><a href="client.php">Mes clients <span class="glyphicon glyphicon-userr" aria-hidden="true"></span></a></li>
<li class="active"><a href="rdv.php">Mes rendez-vous</a></li>
<li class="active"><a href="historique.php">Historique</a></li>
</ul>
<ul class="nav navbar-nav navbar-right">
<!--<li> <input type="search" class="form-control search-form" placeholder="Rechercher" name="name"/></li>-->
<li class="active"><a href="searchhhhh.html" role="button" aria-haspopup="true" aria-expanded="false"><span class="glyphicon glyphicon-search" aria-hidden="true"></span></a></li>
<li><a href="logout.php">logout <span class="glyphicon glyphicon-user" aria-hidden="true"></a></li>
</ul>
</div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</nav>
<body>
<div class="col-md-12 col-xs-12 col-lg-offset-" style="margin-top:150px;">
<div class="panel panel-info ">
<div class="panel-heading">
liste des clients
</div>
<a href="enregistrer_client.php"><button class="btn btn-info"><i class="fa fa-plus"></i> ajouter des clients</button></a>
<table class="table table-striped">
<tbody>
<?php
include ('include/dbconnect.php');
if(isset($_SESSION['id'])) {
$query = "SELECT * FROM membre WHERE INNER JOIN client ORDER BY 1";
$ps = $con->prepare($query);
$ps->bindParam(':id', $_SESSION ['pseudo']);
$ps->setFetchMode(PDO::FETCH_ASSOC);
$doHeader = true;
if ($doHeader) {
echo "<table>";
echo "<thead><tr><th>nom</th><th>entreprise</th><th>fonction</th><th>email</th><th>contact</th><th>ville</th></tr></thead>";
foreach ($ps as $row) {
echo "<tr>";
<td><?=$row ['nom'];?></td>
<td><?=$row ['entreprise'];?></td>
<td><?=$row ['fonction'];?></td>
<td><?=$row ['email'];?></td>
<td><?=$row ['contact'];?></td>
<td><?=$row ['ville'];?></td>
<td><?=$row ['produit'];?></td>
<td><?=$row ['prix'];?></td>
<td><?=$row ['payer'];?></td>
<td><?=$row ['reglement'];?></td>
<td><?=$row ['caisse'];?></td>
<td><?=$row ['date'];?></td>
echo "</tr>\n";
}
echo "</table>";
} else {
echo "<p> Error</p>";
}
}
?>
</p>
<br/>
</tbody>
</table>
</div>
</div>
</body>
</body>
</html>
De ce fait j'ai pu déjà créer les différentes tables membre et client qui sont les suivantes :
- Membre( id, pseudo, mail, motdepasse)
- Client(id_client, id_menbre, fonction, email, contact, ville, produit, prix, payer, reglement, date)
La page du formulaire d'ajout de client a été crée, l'ajout des donnée se font sans aucun problème dans la base de donnée.
Mais rien ne s'affiche lorsque je lance la page ( afficher_liste_client.php ), je ne sait pas quoi faire .
Merci d'accorder de l'importance à mon poste
TheOldNoob Le 16 août 2016 à 03:16 (Édité le 1 janvier 1970 à 01:00)
Dans l'idée, plutot que d'aller chercher avec une jointure dans la table membre, pourquoi ne pas récupérer dans ta table client, uniquement les clients ayant l'ID de ton commercial?
$ps = $con->prepare('SELECT * FROM client WHERE id_membre = $_SESSION['id'] ORDER BY date');
Si je suis pas trop con (vu l'heure) ça doit récupérer et afficher uniquement les clients dont l'id membre est = a celle du membre qui a ouvert la session.
Question, ton ORDER BY 1, le 1 correspond quel champs dans ta table ?
Ensuite, tu a quelque soucis de balise php notament sur la ligne 101 ton td a un probleme 😋
Pour moi, tu ferme une balise php ligne 92, tu vire les echo ligne 95 et 96 histoire d'avoir une coloration sytaxique correcte pour ton html(du coup plus facile pour voir les erreurs)
Tu réouvre ton php devant ton foreach ligne 97 et tu le ferme a la fin de la même ligne.
Tu retire l'echo de la ligne 98
Ligne 114 il manque une ouverture de balise php
sasha Le 25 août 2016 à 01:58 (Édité le 1 janvier 1970 à 01:00)
Merci encore une fois pour aide je teste votre solution proposée et je vous reviens.