Salut tout le monde.

Je galère depuis 2 jours sur mon formulaire PHP. Pour info ma base de données est sur Access.

Mon formulaire marche nickel seulement lorsque tous les champs sont remplis. Le problème c'est que les utilisateurs n'auront pas l'obligation de remplir tous les champs et quand je valide le formulaire avec au moins un champ vide, ça bug !!!!

Je vous laisse mon code.

Merci pour votre aide.

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
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
 
<body>
 
<p class="classe1">Formulaire de transmission d'un dossier</p>
<form id="form1" name="form1" method="post" action="">
 
<div class="page">
    <div class="ligne">
        <div class="col"> Nom :
        <input name="nom" type="text" class="classe3" size="31" maxlength="30"/>
        </div>
        <div class="col">Prénom :
        <input name="prenom" type="text" class="classe3" maxlength="30" size="31" />
        </div>
        <div class="col">Nom de jeune fille :
        <input name="nom_jf" type="text" class="classe3" maxlength="30" size="31" />
        </div>
        <div class="col">Date de naissance :
        <input name="ddn" type="text" class="classe3" />
        </div>
    </div>
    <div class="ligne">
        <div class="col">Date de demande :
        <input name="date_demande" type="text" class="classe3" />
        </div>
        <div class="col">Demandeur :
        <input name="demandeur" type="text" class="classe3" maxlength="30" size="31" />
        </div>
        <div class="col">Service :
        <input name="service" type="text" class="classe3" maxlength="30" size="31" />
        </div>
        <div class="col">Parenté :
        <input name="parente" type="text" class="classe3" maxlength="20" size="21" />
        </div>
    </div>
    <div class="ligne">
        <div class="colpetite">Date réponse SIM :
        <input name="date_reponse_SIM" type="text" class="classe3" size="20" />
        </div>
        <div class="colmed">  Médecin 1 :
        <input name="medecin1" type="text" class="classe3" size="28" />
        </div>
        <div class="colmed">Médecin 2 :
        <input name="medecin2" type="text" class="classe3" size="28" />
        </div>
        <div class="colmed">Médecin 3 :
        <input name="medecin3" type="text" class="classe3" size="28" />
        </div>
        <div class="colmed">Médecin 4 :
        <input name="medecin4" type="text" class="classe3" size="28" />
        </div>
    </div>
    <div class="ligne">
        <div class="colpetite">Réponse CHD : &nbsp;&nbsp;&nbsp;&nbsp;
        <input type="radio" name="reponse" value="-1" />oui
        &nbsp;&nbsp;&nbsp;&nbsp;
        <input type="radio" name="reponse" value="0" checked="checked"/>non
        </div>
        <div class="colmed">Service 1 :
        <input name="service1" type="text" class="classe3" size="28" />
        </div>
        <div class="colmed">Service 2 :
        <input name="service2" type="text" class="classe3" size="28" />
        </div>
        <div class="colmed">Service 3 :
        <input name="service3" type="text" class="classe3" size="28" />
        </div>
        <div class="colmed">Service 4 :
        <input name="service4" type="text" class="classe3" size="28" />
        </div>
    </div>
    <div class="ligne">
        <div class="col">Date réponse CHD :
        <input name="date_reponse_CHD" type="text" class="classe3" size="20" />
        </div>
        <div class="col">Remarques :
        <textarea name="remarques" class="classe3" cols="50" rows="3"></textarea>
        </div>
        <div class="colgrande">Copie du dossier patient :
        <input name="copie" type="text" class="classe3" size="20" />
        </div>
    </div>
</div>
<div align="center">
<input name="valider" type="submit" class="classe4" value="Valider la transmission" />
</div>
 
 
<?php
//connexion à une base de données ACCESS
$bd="Transmission"; // identifiant DSN
$user="Admin"; // login
$password=""; // password
$cnx = odbc_connect( $bd , $user, $password ) or die ("impossible de se connecter");
 
//si c'est connecté
if ($cnx){
 
//on créé
 
      // si on clique sur le bouton valider
        if (isset($_POST["valider"])){
 
        // création d'un enregistrement dans la table liste
        // vérification l'enregistrement existe-t-il déja ?
        // on considère que les champs sont remplis correctement
 
           $req="SELECT *
               FROM Liste
               WHERE nom='$_POST[nom]'
               and prenom='$_POST[prenom]'
               and nom_jf='$_POST[nom_jf]'";
 
           $result=odbc_do($cnx,$req) or die ('Erreur dans la requête :  '.$req.' Erreur : '.odbc_error());
 
           $nbcreer=0;
        //on compte le nombre de lignes trouvées.
          while (odbc_fetch_row($result)){
            $nbcreer++;
             }
 
          //Si le nombre est égal à 0, la création est possible sinon, elle doit être refusée.
            If ($nbcreer == 0){
            $req="INSERT into Liste (nom, prenom, nom_jf, ddn, date_demande, demandeur, service, parente, date_reponse, medecin_1, service_1, medecin_2, service_2, medecin_3, service_3,medecin_4,service_4, copie_dossier_patient, remarque, reponse_chd, date_reponse_chd)
               VALUES ('$_POST[nom]','$_POST[prenom]', '$_POST[nom_jf]',#$_POST[ddn]#,#$_POST[date_demande]#,'$_POST[demandeur]','$_POST[service]','$_POST[parente]',#$_POST[date_reponse_SIM]#,'$_POST[medecin1]','$_POST[service1]','$_POST[medecin2]','$_POST[service2]','$_POST[medecin3]','$_POST[service3]','$_POST[medecin4]','$_POST[service4]','$_POST[copie]','$_POST[remarques]',$_POST[reponse],#$_POST[date_reponse_CHD]#)";
 
             $result=odbc_do($cnx,$req) or die ('Erreur dans la requête :  '.$req.' Erreur : '.odbc_error());
          }
          else { 
            echo "Enregistrement impossible";
          }
        }
 
 //si c'est pas connecté
} 
else{ 
echo "Impossible de se connecter à la base de données"; 
} 
odbc_close( $cnx);//ferme la connexion
?> 
 
 
</form>
</body>