PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 Forum Général PHP » Débutant projet Php ^^ » 28-09-2012 14:11:42

Yomas
Réponses : 0

Bonjour à tous !

Je débute en PHP, et après avoir suivi les cours Php débutant du site, je me lance dans la création d'un petit script de gestion de répartition du temps de travail.

Et ben c'est pas gagné !!!

L'idée et de pouvoir en fonction d'un client, sélectionner une semaine de l'année par conseiller, et savoir combien de temps le conseiller à passé sur le dossier d'un client.
A part ça, il faut dans un deuxième temps pouvoir dire sur une semaine le temps consacré par un conseiller sur les postes : formation, administratif et prospection)

J'ai commencé par créer une bdd avec les tables suivantes :

clients (id, nom, prenom)
conseiller(id, nom, prenom)
suivi_temps(id, annee, id_client, id_conseiller, semaine, temps_aloue)
detail_temps(id, annee, id_conseiller, semaine, administratif, formation, prospection)

Ensuite j'ai crée un formulaire pour permettre d'ajouter un client dans la base s'il n'existe pas :
nouveau-client.php ->


<form method="post" action="requests/form-nouveau-client.php">   
  <label for="prenom">Pr&eacute;nom :</label><input type="text" name="prenom" /><br />
  <label for="nom">Nom :</label><input type="text" name="nom" /><br />
  <input type="submit" value="Effectuer la mise &agrave; jour" />
</form>

 

Puis form-nouveau-client.php->


<?php
// On commence par récupérer les champs
if(isset($_POST['nom']))      $nom=$_POST['nom'];
else      $nom="";

if(isset($_POST['prenom']))      $prenom=$_POST['prenom'];
else      $prenom="";

// On vérifie si les champs sont vides
if(empty($nom) OR empty($prenom))
    {
    echo '<font color="red">Attention, aucun champ ne peut rester vide !</font>';
    }

// Aucun champ n'est vide, on peut enregistrer dans la table
else      
    {
       // connexion à la base
$db = mysql_connect('localhost', 'root')  or die('Erreur de connexion '.mysql_error());
// sélection de la base  

    mysql_select_db('valorial_suivi',$db)  or die('Erreur de selection '.mysql_error());
     
    // on écrit la requête sql
    $sql = "INSERT INTO clients(id, nom, prenom) VALUES('','$nom','$prenom')";
     
    // on insère les informations du formulaire dans la table
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

    // on affiche le résultat pour le visiteur
    echo 'Vos infos on été ajoutées.';
  header("location:../index.php");

    mysql_close();  // on ferme la connexion
    }  
?>


 

Tout ceci fonctionne correctement (jusque là tout va bien ^^)

Mais là j'attaque le deuxième formulaire et ça se complique ;-)

suivitemps.php ->


<form>   

<h3>Choix de la semaine</h3>
<label>Choisissez la semaine concern&eacute;e</label>

<select>
<option value="1">Semaine 1</option>
<option value="2">Semaine 2</option>
<option value="3">Semaine 3</option>
<option value="4">Semaine 4</option>
<option value="5">Semaine 5</option>
<option value="6">Semaine 6</option>
<option value="7">Semaine 7</option>
<option value="8">Semaine 8</option>
<option value="9">Semaine 9</option>
<option value="10">Semaine 11</option>
<option value="11">Semaine 11</option>
<option value="12">Semaine 12</option>
<option value="13">Semaine 13</option>
<option value="14">Semaine 14</option>
<option value="15">Semaine 15</option>
<option value="16">Semaine 16</option>
<option value="17">Semaine 17</option>
<option value="18">Semaine 18</option>
<option value="19">Semaine 19</option>
<option value="20">Semaine 20</option>
<option value="21">Semaine 21</option>
<option value="22">Semaine 22</option>
<option value="23">Semaine 23</option>
<option value="24">Semaine 24</option>
<option value="25">Semaine 25</option>
<option value="26">Semaine 26</option>
<option value="27">Semaine 27</option>
<option value="28">Semaine 28</option>
<option value="29">Semaine 29</option>
<option value="30">Semaine 30</option>
<option value="31">Semaine 31</option>
<option value="32">Semaine 32</option>
<option value="33">Semaine 33</option>
<option value="34">Semaine 34</option>
<option value="35">Semaine 35</option>
<option value="36">Semaine 36</option>
<option value="37">Semaine 37</option>
<option value="38">Semaine 38</option>
<option value="39">Semaine 39</option>
<option value="40">Semaine 40</option>
<option value="41">Semaine 41</option>
<option value="42">Semaine 42</option>
<option value="43">Semaine 43</option>
<option value="44">Semaine 44</option>
<option value="45">Semaine 45</option>
<option value="46">Semaine 46</option>
<option value="47">Semaine 47</option>
<option value="48">Semaine 48</option>
<option value="49">Semaine 49</option>
<option value="50">Semaine 50</option>
<option value="51">Semaine 51</option>
<option value="52">Semaine 52</option>
<option value="53">Semaine 53</option>
</select>

<h3>Conseiller</h3>
<label>Choisissez le conseiller</label>
<select>
<option value="conseiller1">Conseiller 1</option>
<option value="conseiller2">Conseiller 2</option>
<option value="conseiller3">Conseiller 3</option>
<option value="conseiller4">Conseiller 4</option>
<option value="conseiller5">Conseiller 5</option>
<option value="conseiller6">Conseiller 6</option>
</select>


<h3>Choix du client</h3>
<label>Choisissez le client</label>
<select>
<option value="client1">client 1</option>
<option value="client2">client 2</option>
<option value="client3">client 3</option>
<option value="client4">client 4</option>
<option value="client5">client 5</option>
</select>

<h3>Temps Pass&eacute;</h3>
<label for="nbre_heures">Renseigner le temps</label>
<input type="text" name="nbre_heures" />
<input type="submit" name="Mettre à jour" />


<h3>Enregistrer dans la base</h3>
<p>Cliquez sur le bouton suivant pour effectuer la mise &agrave; jour de la fiche de suivi de temps</p>
<input type="submit" value="Effectuer la mise &agrave; jour" />
</form>

 

Et là j'avoue que ça devient un peu trop d'infos à gérer d'un coup pour mon petit cerveau :'(

Je sais déjà que je dois faire des liens entre les tables pour que l'id du client soit inséré dans la table suivi_temps sous id_client, et récupérer cette variable dans le formulaire ci dessus.
Il faut aussi pouvoir faire fonctionner tout ça en ajax pour le submit juste avant d'enregistrer dans la base, car forcément il y a plusieurs clients dans une semaine !!!

En gros j'ai la logique mais pas la méthode :'(

Puis-je espérer obtenir un coup de main pour me mettre sur la voie du sage, je ne sais qu'intégrer pour l'instant et j'aimerais vraiment apprendre à développer en Php brut,
pour par la suite me former au Php Orienté Objet et au modèle MVC, mais bon chaque chose en son temps !!!!

J'espère ne pas vous avoir trop saoulé et qu'une âme charitable saura m'accorder un peu de son temps pour m'aider dans ma démarche !!!

Vous souhaitant à tous une excellente journée !!

@++

Pied de page des forums

Propulsé par FluxBB