Enregistrement sur un base de donnees
Résolu
gahmed
-
jjsteing Messages postés 1670 Date d'inscription Statut Contributeur Dernière intervention -
jjsteing Messages postés 1670 Date d'inscription Statut Contributeur Dernière intervention -
A voir également:
- Enregistrement sur un base de donnees
- Fuite données maif - Guide
- Base de registre - Guide
- Effacer les données de navigation sur android - Guide
- Erreur lors de l'enregistrement du contact - Forum Xiaomi
- La zone de données passée à un appel système est insuffisante - Windows 11
13 réponses
Bonjour,
ton erreur duplicate je pense que ton insert essaye d ajouter une l=nouvelle ligne don la clé primaire est déja renseignée dans ta base de donnée.
De plus, je pense que ton insert est placé trop tot dans ton code php, ce qui fait qu il te lance l insert sans avoir les variables adéquat a insérer...
Serait t il possible d avoir ton bout de code ??
ton erreur duplicate je pense que ton insert essaye d ajouter une l=nouvelle ligne don la clé primaire est déja renseignée dans ta base de donnée.
De plus, je pense que ton insert est placé trop tot dans ton code php, ce qui fait qu il te lance l insert sans avoir les variables adéquat a insérer...
Serait t il possible d avoir ton bout de code ??
voila mon code
il y a deux requetes INSERT car on fait sa deux tables
<?php $jours = date("d"); $moisys = date("m"); $annees = date("Y"); ?> <form action="" method="POST"> <blockquote> <center><h3> Enregistrement Patient </h3></center> <table width="707" height="111"> <tr> <td width="306"> Date de Consultation <input size="1" value="<?php echo $jours ?>" maxlength="2" disabled="" name="da"> <input size="2" value="<?php echo $moisys ?>" maxlength="3" disabled="" name="moi"> <input size="4" value="<?php echo $annees ?>" maxlength="4" disabled="" name="ans"> </td> <td colspan="2">1ere Visite <select name="vis"> <option>OUI</option> <option>NON</option> </select> Si non, Num enreg <input type="text" size="5" name="enreg"></td></tr> <?php $bach= strtoUpper($_POST['enreg']); echo $bach; ?> <tr><td>MODE PAIEMENT <select name="paiement"> <option>cheque</option> <option>espece</option> </select> </td> <td width="151"> </td> <td width="234"> Num de Quittance <input type="text" size="5" name="quit"></td> </tr></table> </blockquote> <?php //connection au serveur $cnx = mysql_connect( "localhost", "root", "" ) ; //sélection de la base de données: $db = mysql_select_db( "hospital" ) ; //récupération des valeurs des champs: $num=$_POST["enreg"]; $dateCons=$annees.$moisys.$jours; $quit=$_POST["quit"]; $vis=$_POST['vis']; $paiement=$_POST["paiement"]; //création de la requête SQL: $sql = "INSERT INTO consultation (numP, DateCons, numqui, previsite, modepaiement) VALUES ( '$num', '$dateCons', '$quit', '$vis','$paiement') " ; //exécution de la requête SQL: $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ; //affichage des résultats, pour savoir si l'insertion a marchée: if($requete) { echo("L'insertion a été correctement effectuée") ; } else { echo("L'insertion à échouée") ; } ?> <br> <blockquote> <center><h3> Etat Civil </h3></center> <p>Nom <input type="text" size="20" name="n"> Prenom <input type="text" size="20" name="p"> Date de Naiss <select name="jour"> <option >01</option> <option>02</option> <option >03</option> <option >04</option> <option >05</option> <option>06</option> <option >07</option> <option >08</option> <option >09</option> <option >10</option> <option >11</option> <option >12</option> <option >13</option> <option >14</option> <option >15</option> <option>16</option> <option >17</option> <option >18</option> <option >19</option> <option >20</option> <option >21</option> <option >22</option> <option >23</option> <option >24</option> <option >25</option> <option >26</option> <option >27</option> <option >28</option> <option >29</option> <option >30</option> <option >31</option> </select> <select name="mois"> <option >01</option> <option>02</option> <option >03</option> <option >04</option> <option >05</option> <option >06</option> <option >07</option> <option >08</option> <option >09</option> <option >10</option> <option >11</option> <option >12</option> </select> <select name="year"> <option >2021</option> <option >2020</option> <option >2019</option> <option >2018</option> <option >2017</option> <option>2016</option> <option >2014</option> <option >2013</option> <option >2012</option> <option >2011</option> <option >2010</option> <option >2009</option> <option >2008</option> <option >2007</option> <option>2006</option> <option >2005</option> <option >2004</option> <option>2003</option> <option >2002</option> <option >2001</option> <option >2000</option> <option>1999</option> <option >1998</option> <option >1997</option> <option >1996</option> <option>1995</option> <option >1994</option> <option >1993</option> <option >1992</option> <option >1991</option> <option >1990</option> <option >1989</option> <option >1988</option> <option >1987</option> <option >1986</option> <option >1985</option> <option >1984</option> <option>1983</option> <option >1982</option> <option >1981</option> <option>1980</option> <option >1982</option> <option >1981</option> <option>1980</option> <option >1979</option> <option >1978</option> <option >1977</option> <option >1976</option> <option >1975</option> <option>1974</option> <option >1973</option> <option >1972</option> <option >1971</option> <option >1970</option> </select> </p> <p>Age <input type="text" size="4" name="age" disabled="disabled"> Sexe <select name="sex" > <option >Masculin</option> <option >Feminin</option> </select> Adresse Habituelle<input type="text" size="50" name="adr"> </p> <p> Region <select name="region" > <option >Dakar</option> <option >Thies</option> <option >Matam</option> <option >Ziguinchor</option> <option >Kaolack</option> <option >Tamba</option> <option >St Louis</option> <option >Fatick</option> <option >Podor</option> <option >Autre</option> </select> Si autre <input type="text" size="15" name="oregion"> Ethnie <select name="e"> <option >Wolof</option> <option >Serere</option> <option >Diola</option> <option >Toucouleur</option> <option >Banbara</option> <option >Mandingue</option> <option >Autre</option> </select> Si autre <input type="text" size="15" name="oethnie"> </p> <p> Telephone ou Cellulaire <input type="text" size="20" name="tel"> Niveau d'instruction <select name="nivo"> <option >Absent</option> <option >Langue Nationale</option> <option >Primaire</option> <option >Secondaire</option> <option >Universitaire</option> </select> </p> <p> Profession <select name="pf"> <option >Autre</option> <option >Commercant</option> <option >Cultivateur</option> <option >Eleve,Etudiant</option> <option >Eleveur</option> <option >Enseignant</option> <option >Militaire</option> <option >Ouvrier</option> </select> Si autre <input type="text" size="15" name="op"> Statut Matrimonial <select name="sm"> <option >Celibataire</option> <option >Marie(e)</option> <option >Divorce(e)</option> <option >Veuf(ve)</option> </select> <center><input type="submit" value="VALIDER"></center> </blockquote> <br> <?php //connection au serveur $cnx = mysql_connect( "localhost", "root", "" ) ; //sélection de la base de données: $db = mysql_select_db( "hospital" ) ; //récupération des valeurs des champs: $num=$_POST["enreg"]; $n=$_POST["n"]; $p=$_POST["p"]; $year=$_POST["year"]; $mois=$_POST["mois"]; $jour=$_POST["jour"]; $date=$year.$mois.$jour; $age=$annees - $year; $region=$_POST["region"].'-'.$_POST["oregion"]; $sex=$_POST["sex"]; $adr=$_POST["adr"]; $ethnie=$_POST["ethnie"].'-'.$_POST["oethnie"]; $nivo=$_POST["nivo"]; $pfs=$_POST["pf"].'-'.$_POST["op"]; $tel=$_POST["tel"]; $sm=$_POST["sm"]; //création de la requête SQL: $sql1 = "INSERT INTO patient (numP,nomP, prenomP, age,date, sexe, adresse, region, telephone, ethnie, niveau_instruction, profession, statut_matrimonial) VALUES ( '$num','$n', '$p', '$age','$date', '$sex', '$adr', '$region', '$tel', '$ethnie', '$nivo', '$pfs', '$sm') " ; //exécution de la requête SQL: $requete1 = mysql_query($sql1, $cnx) or die( mysql_error() ) ; //affichage des résultats, pour savoir si l'insertion a marchée: if($requete1) { echo("L'insertion a été correctement effectuée") ; } else { echo("L'insertion à échouée") ; } ?> <br> </form>
il y a deux requetes INSERT car on fait sa deux tables
essaye avec
$sql = "INSERT INTO consultation (numP, DateCons, numqui, previsite, modepaiement)
VALUES ( ".$num.", ".$dateCons.", ".$quit.", ".$vis.",".$paiement.") " ;
ou
$sql = "INSERT INTO consultation (numP, DateCons, numqui, previsite, modepaiement)
VALUES ( `".$num."`, `".$dateCons."`, `".$quit."`, `".$vis."`,`".$paiement."`) " ;
Attention, dans le 2eme test c est bien un ` et pas ' :p
tient moi au jus :)
$sql = "INSERT INTO consultation (numP, DateCons, numqui, previsite, modepaiement)
VALUES ( ".$num.", ".$dateCons.", ".$quit.", ".$vis.",".$paiement.") " ;
ou
$sql = "INSERT INTO consultation (numP, DateCons, numqui, previsite, modepaiement)
VALUES ( `".$num."`, `".$dateCons."`, `".$quit."`, `".$vis."`,`".$paiement."`) " ;
Attention, dans le 2eme test c est bien un ` et pas ' :p
tient moi au jus :)
merci pour les codes mais aucune des deux requetes ne passent
pour la premiere on a cette erreur(You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' 20090709, , ,)' at line 2)
pour la deuxieme on a sa (Unknown column '' in 'field list')
pour la premiere on a cette erreur(You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' 20090709, , ,)' at line 2)
pour la deuxieme on a sa (Unknown column '' in 'field list')
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
oulala, j etais fatigué hier soir....
$sql = "INSERT INTO consultation (`numP`, `DateCons`, `numqui`, `previsite`, `modepaiement`)
VALUES ( '".$num."', '".$dateCons."', '".$quit."', '".$vis."','".$paiement."') " ;
attention il y a 3 guillemets Values ( ' ".$num." ' .... mais il ne faut pas mettre les espaces ;)
essai donc ca ;)
$sql = "INSERT INTO consultation (`numP`, `DateCons`, `numqui`, `previsite`, `modepaiement`)
VALUES ( '".$num."', '".$dateCons."', '".$quit."', '".$vis."','".$paiement."') " ;
attention il y a 3 guillemets Values ( ' ".$num." ' .... mais il ne faut pas mettre les espaces ;)
essai donc ca ;)
merci le code que tu m'as passe mais le problème c'est que NumP et DateCons forment une clé primaire pour la table Consultation des que j'ouvre la page il fait un enregistrement dont les valeurs pour la clé primaire sont 0 et 0000-00-00 . Maintenant si je ferme la page et la réouvre il va essayer de faire cet enregistrement 0 et 0000-00-00 ce qui n'est pas possible car la clé primaire doit être unique c'est pourquoi il me signale que la clé primaire ne peut pas dupliquer.
Comment faire pour qu'il n'enregistre pas les valeurs 0 pour NumP et 0000-00-00 pour DateCons?
Comment faire pour qu'il n'enregistre pas les valeurs 0 pour NumP et 0000-00-00 pour DateCons?
fait un test avant ta requete pour savoir si NumP et DateCons ne sont pas null alors
genre :
if isset($num) and isset($dateCons) {
INSERT ...
}
genre :
if isset($num) and isset($dateCons) {
INSERT ...
}
j'ai mis la condition mais il y a toujours cet enregistrement. A
Aurais tu une autre idée pour m'aider a résoudre mon problème?
Merci quand même pour l'aide que tu me fournis pour avancer
Aurais tu une autre idée pour m'aider a résoudre mon problème?
Merci quand même pour l'aide que tu me fournis pour avancer