j'ai lu plusieurs tuto sur le MVC et je ne comprends pas tout.
Mon post contient plusieurs questions mais elles sont liées les unes par rapport aux autres.

d'avance, un IMMENSE merci à vous. Parlez moi avec des mots hyper simples je suis novice et autodidacte.

PRIMO: est-ce que tous les fichiers doivent avoir l'extention .php? ou peut-on avoir l'extention .html? si oui quelle différence? (html=vue php=contrôle?)

pour l'instant j'ai un fichier où tout est mélangé le visuel est celui-ci

Nom : form.JPG
Affichages : 391
Taille : 40,5 Ko

le code de la page

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
<?php
session_start();
?><?php
 
$nbresult=-1;
 
if (isset($_POST['identifiant'])) 
{
	if ( ($_POST['identifiant']=="") || (!is_numeric($_POST['identifiant']))) {$identifiant=0;} else {
    	$identifiant=$_POST['identifiant'];}
} else {
		$identifiant=0;
};
 
if (isset($_POST['mdp']))
{
        $mdp=$_POST['mdp'];
} else {
		$mdp="";
};
 
 
if (isset($_POST['form_ok']))
{
        $form_ok=$_POST['form_ok'];
} else {
		$form_ok=false;
};
 
 
 
if ($form_ok) {
 
  	//connection au serveur:
    $cnx = odbc_connect( "DSN_disponibilite", "root", "" ) or die ("Impossible de se connecter à la base de donnée") ;
 
    //requête SQL:
    $sql = "SELECT count(*) as compteur FROM mdp where matricule=".$identifiant." and mdp='".$mdp."'";
 
	//exécution de la requête:
    $requete = odbc_do($cnx, $sql) ;
 
    //affichage des données:
	$result = odbc_fetch_object($requete);
	$nbresult=$result->compteur;
//echo $nbresult;
 
}
?>
 
 
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>formulaire d'identification</title>
<style type="text/css">
body,td,th {
	font-size: 18px;
}
.couleurtext {
	color: #00C;
}
.couleurtext {
	color: #00C;
}
.tailletext {
	font-size: 10px;
}
.taillemdp {
	font-size: 12px;
}
</style>
</head>
 
<body>
<p align="center"><img src="csp.jpg" width="434" height="71" alt="image" /></p>
<p align="center">&nbsp;</p>
<p align="center"><strong>Centre de Gestion de déclaration de disponibilité.</strong></p>
<p align="center"><strong>   </strong></p>
<form id="form1" name="form1" method="post" action="index.php">
<p>&nbsp;</p>
 
<div align="center">
  <?php 
if (!$nbresult) {
	echo'<b><font color="#FF0000">Mot de passe ou Identifiant incorrect !<br><br></font></b>';}
else if ($nbresult==1) {
	$_SESSION["cookie_matricule"] = $identifiant;
	$_SESSION["cookie_mdp"]= $mdp;
//	echo'<script>location.href="declaration_dispo.php";</script>';
header('Location: declaration_dispo.php'); 
 
}?></div>
<p align="center"> <span class="couleurtext">Identifiant</span> :      
  <input name="identifiant" type="text" id="identifiant"  accesskey="1" tabindex="1" value="" size="20" maxlength="19" />
 </p>
<p align="center"><span class="couleurtext">Mot de passe:</span>
  <input name="mdp" type="password" id="mdp" accesskey="2" tabindex="2" value="" size="20" maxlength="19" />
</p>
<p>&nbsp;</p>
 
  <div align="center">
    <p>
      <input type="submit" name="ok" id="ok" value="Valider" accesskey="3" tabindex="3" />
      <input type="submit" name="Annuler" id="Annuler" value="Annuler" accesskey="4" tabindex="4" />
      <input name="form_ok" type="hidden" id="form_ok" value="1">
    </p>
  </div>
</form>
<p align="left"><a href="mailto:hdupont@sdis28.fr" class="tailletext">webmaster</a></p>
<p align="left"><a href="centre_liste.php" class="tailletext">*</a></p>
<form id="form2" name="form2" method="post" action="centre_sdis.php">
  <p align="center"><input type="submit" name="codis" id="codis" value="Accès CODIS" accesskey="5" tabindex="5" /></p>
</form>
</body>
</html>
A l'heure actuelle j'ai un fichier config.php où il y a les critères de connection et une session suite à la validation d'un formulaire d'identification.

Pour insérer de la donnée, il me faudra donc envoyer vers un fichier "insertion.php" avec contrôle des données, préparation de la requête et execution de la reqête. Je le ferai en PDO, il parait que c'est mieux contre les failles?

Comment avoir accusé de récéption sur le même formulaire. (l'insertion a été effectuée.)



Si je change la date,
soit dans la case date soit par la liste des dates à droite du formulaire,
il va falloir envoyer la valeur (Plutôt GET ou POST?) vers un fichier
"selection date.php"
-> requête pour savoir si l'agent a déclaré de la donnée et si oui,

C'EST LA LE COEUR DE MON SOUCI

comment je fais pour renvoyer sur mon formulaire de départ les valeurs des cases à cocher ($tranche1...) , pour effectuer l'affichage.
Je ne vois dans aucun tuto décrit le chemin retour. C'est peut-être simple mais je suis autodidacte et je ne sais vraiment pas comment ça se passe.

Enfin

Concernant le script du calendrier qui prend beaucoup de lignes.
Me conseillez-vous de faire un module "calendar.php"
et de remplacer toute les lignes de code dans le formulaire principale par:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
include("calendar.php")