Insertion bdd

Fermé
Melissa - 31 mai 2016 à 22:35
jordane45 Messages postés 38285 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 13 novembre 2024 - 2 juin 2016 à 00:20
Bonjour
Voila j'ai créé un formulaire de rendez vous ou j'ai mis un datepicker et un timepicker. J'aimerais récuperer les valeurs saisi par l utilisateur et les mettre dans la bdd, et aussi si la date et l heure son prise un message d'erreur va apparaitre. Je suis vraiment pas au top en php alors si quelqu'un peut m aider svp ?

3 réponses

jordane45 Messages postés 38285 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 13 novembre 2024 4 697
31 mai 2016 à 22:44
Bonjour,

Sans voir ton code .... impossible de t'aider.

Il faut que tu nous montres : le code html de ton formulaire, le code PHP de connexion à la BDD (en masquant le username et le password) , et le code PHP que tu as déjà tenté de faire pour l'insertion en BDD.

NB : Si tu utilises l'ancienne extension de mysql (considérée comme obsolète) merci de lire ceci :
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
Puis de passer à PDO ou mysqli

NB² : Pour poster du code sur le forum, merci d'utiliser la coloration syntaxique (explications ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code )
0
jordane45 Messages postés 38285 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 13 novembre 2024 4 697
31 mai 2016 à 22:45
Ah .. et .. il nous faut aussi connaitre la structure de tes tables (de ta BDD).
En espérant que pour stocker tes dates et heures... tu aies bien utilisé les champs prévus à cet effet dans ta BDD ( à savoir du DateTime ou du Timestamp ... et surtout pas du text ou du varchar ! )
0
ma table s'appelle rdv(id,date,heure) de type (int,date,time)
voila mon code. Pour la parie vérification de la validité des dates et heures j ai vraiment pas su comment la faire mer pour votre aide
<?php
include('bd.php');
?> 
 <?php
 //recuperer les variable
 $recuperer = isset($_POST['affichage'])?$_POST['affichage']:''; 
   $date  = isset($_POST['date'])?$_POST['date']:null;
  $heure   = isset($_POST['heure'])?$_POST['heure']:null;
  if( $date && $heure){
    
     $nom="insert into rdv
        (date,heure) 
        values('$_POST[date]','$_POST[heure]')";
     $resultat=mysql_query($nom)  or die('Erreur \n Insertion impossible::' .mysql_error()."<br> REQUETE :<br>".$nom);
       $result .=  "<br>Enregistrement bien effectue! ";
       
     }else{
      $result .="Veuillez remplir correctement tous les champs !";
 
  ?>
  <!DOCTYPE html>
<html>
<head>
    <title></title>
    <link href="./bootstrap/css/bootstrap.min.css" rel="stylesheet" media="screen">
    <link href="../css/bootstrap-datetimepicker.min.css" rel="stylesheet" media="screen">
</head>

<body>
<div class="container">
    <form action="" class="form-horizontal"  role="form">
        <fieldset>
            <legend>Rendez vous</legend>
           <table align="center">
     <tr>
     
   <div class="form-group">
                <label for="dtp_input2" class="col-md-2 control-label">Date </label>
                <div class="input-group date form_date col-md-5" data-date="" data-date-format="dd MM yyyy" data-link-field="dtp_input2" data-link-format="yyyy-mm-dd">
                    <input class="form-control" size="16" type="text" value="" readonly>
                    <span class="input-group-addon"><span class="glyphicon glyphicon-remove"></span></span>
     <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
                </div>
    <input type="hidden" id="dtp_input2" value="" name="date" /><br/>
            </div>
   </tr>
   <tr>
   <div class="form-group">
                <label for="dtp_input3" class="col-md-2 control-label">Heure</label>
               <div class="input-group date form_time col-md-5" data-date="" data-date-format="hh:ii" data-link-field="dtp_input3" data-link-format="hh:ii">
                    <input class="form-control" size="16" type="text" value="" readonly>
                    <span class="input-group-addon"><span class="glyphicon glyphicon-remove"></span></span>
     <span class="input-group-addon"><span class="glyphicon glyphicon-time"></span></span>
                </div>
    <input type="hidden" id="dtp_input3" value="" name="heure" /><br/>
            </div>
   </tr>
   </table>
        </fieldset>
   <fieldset>
 
    <table border=0 width=100% cellspacing=5 >
       <tr height=35>
       <td  align=right><input type='radio'   name='code' value="echo"/>
        <label >Echographie </label>
      <td align=center >
      <td align=left ><select id='code_exam' name='code_exam_CF003'>
          <option value="CE0044">Echographie Abdominale (A Jeun)</option>
                            <option value="CE0046">Echo Appareil Urinaire (Vessie Pleine)</option>
                            <option value="CE0048">Echographie Epaule</option>
                            <option value="CE0041">Echographie Glandes Salivaires</option>
                            <option value="CE5360">Echographie Grossesse 2ème Trimestre</option>
                            <option value="CE0049">Echographie Hanche Adulte</option>
                            <option value="CE0050">Echographie Hanche Enfant</option>
                            <option value="CE0687">Echographie Mammaire</option>
                            <option value="CE0064">Echographie Grossesse 1er Trimestre (vessie pleine)</option>
                            <option value="CE7240">Echographie Grossesse 3ème Trimestre</option>
                            <option value="CE0042">Echo inguinale,paroi abdominale, des membres</option>
                            <option value="CE0051">Echographie  utérus, ovaires    , vessie,(vessie pleine)</option>
                            <option value="CE0058">Echographie prostatique (vessie pleine)</option>
                            <option value="CE0047">Echographie rénale (A jeûn)</option>
                            <option value="CE0061">Echographie Testiculaire</option>
                            <option value="CE0688">Echographie Tendon d'Achille</option>
                            <option value="CE0040">Echographie Thyroïdienne</option>
      </select>
      
      
       <tr height=35>
           <td align=right><input type='radio' id='CF006' class="objChamp1 radio-but" name='code' value="CF006"/>
        <label for="CF006" class="libele1">Mammographie</label>
      <td align=center >
      <td align=left > <select id='code_exam' name='code_exam_CF006'>
         <option value="CE0028">Dépistage Isis 83</option>
                                    <option value="CE0026">Mammographie 3D- Tomosynthèse</option>

        </select> 
     <tr height=35>
     <td  align=right><input type='radio' id='CF008' class="objChamp1 radio-but" name='code' value="CF008"/>
        <label for="CF008" class="libele1">Osteodensitometrie</label>
      <td align=center >
      <td align=left > <select id='code_exam' name='code_exam_CF008'>
         <option value="CE8699">Composition Corporelle (IMC)</option>
                                    <option value="CE0275">Osteodensitometrie</option>

        </select> 
 <tr height=35>
      <td width=40% align=right><input type='radio' id='CF001' class="objChamp1 radio-but" name='code' value="CF001"/>
        <label for="CF001" class="libele1">Radiologie</label>
      <td align=center width=10%>
      <td align=left > <select id='code_exam' name='code_exam_CF001'>
         <option value="CE0008">Abdomen sans Préparation (ASP)</option>
                                    <option value="CE0693">Bassin, Hanche(s), sacrum, coccyx</option>
                                    <option value="CE8696">Pied-Cheville-Talon</option>
                                    <option value="CE0694">Coude, Avant-bras, Bras</option>
                                    <option value="CE0001">Crâne, Massif facial, orbites, Sinus</option>
                                    <option value="CE0695">Epaule, Clavicule, Ceinture Scapulaire</option>
                                    <option value="CE0039">Genou(x)</option>
                                    <option value="CE0029">Gonométrie,Télémétrie, Membres inférieurs</option>
                                    <option value="CE0020">Côtes, Gril costal, Thorax</option>
                                    <option value="CE8702">Jambe, Tibia Péroné</option>
                                    <option value="CE0697">Main-Poignet-Doigt</option>
                                    <option value="CE0007">Os Propres du nez (OPN)</option>
                                    <option value="CE8695">Pieds en charge, Podométrie</option>
                                    <option value="CE0022">Poumons</option>
                                    <option value="CE0002">Rachis cervical</option>
                                    <option value="CE0032">Rachis cervico-dorsal</option>
                                    <option value="CE0033">Rachis cervico-dorso-lombaire+bassin</option>
                                    <option value="CE0035">Rachis dorsal</option>
                                    <option value="CE0031">Rachis Dorso-Lombaire</option>
                                    <option value="CE8713">Rachis Lombo-sacré</option>
                                    <option value="CE0021">Sternum</option>
                                    <option value="CE8694">Télérachis (Scoliose)</option>

        </select> 
     <tr height=35>
      <td width=40% align=right><input type='radio' id='CF007' class="objChamp1 radio-but" name='code' value="CF007"/>
        <label for="CF007" class="libele1">Radiologie Dentaire</label>
        
      <td align=center width=10%>
      <td align=left >  
        <select id='code_exam' name='code_exam_CF007'>
         <option value="CE0690">ATM (Articulation Temporo-Mandibulaire)</option>
                                    <option value="CE0134">Panoramique Dentaire</option>
                                    <option value="CE0691">Panoramique + Telecrane</option>
                                    <option value="CE0135">Telecrane</option>
        </select> 
  
   <tr height=35>
      <td  colspan=2 align=center><input type="submit" name="affichage" value="envoyer"> 
                        <td  align=left><input type="reset" value="annuler">      
   </table>
   </fieldset>
   
    </form>
</div>

<script type="text/javascript" src="./jquery/jquery-1.8.3.min.js" charset="UTF-8"></script>
<script type="text/javascript" src="./bootstrap/js/bootstrap.min.js"></script>
<script type="text/javascript" src="../js/bootstrap-datetimepicker.js" charset="UTF-8"></script>
<script type="text/javascript" src="../js/locales/bootstrap-datetimepicker.fr.js" charset="UTF-8"></script>
<script type="text/javascript">
    $('.form_datetime').datetimepicker({
        //language:  'fr',
        weekStart: 1,
        todayBtn:  1,
  autoclose: 1,
  todayHighlight: 1,
  startView: 2,
  forceParse: 0,
        showMeridian: 1
    });
 $('.form_date').datetimepicker({
        language:  'fr',
        weekStart: 1,
        todayBtn:  1,
  autoclose: 1,
  todayHighlight: 1,
  startView: 2,
  minView: 2,
  forceParse: 0
    });
 $('.form_time').datetimepicker({
        language:  'fr',
        weekStart: 1,
        todayBtn:  1,
  autoclose: 1,
  todayHighlight: 1,
  startView: 1,
  minView: 0,
  maxView: 1,
  forceParse: 0
    });
</script>

</body>
</html>

0
jordane45 Messages postés 38285 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 13 novembre 2024 4 697
31 mai 2016 à 23:43
Vu que tu récupères proprement les variables au début de ton script
 $recuperer = isset($_POST['affichage'])?$_POST['affichage']:''; 
   $date  = isset($_POST['date'])?$_POST['date']:null;
  $heure   = isset($_POST['heure'])?$_POST['heure']:null;

Pourquoi.. ensuite .. tu ne les utilise pas ???
 $nom="insert into rdv
        (date,heure) 
        values('$_POST[date]','$_POST[heure]')";


Si tu fais un ECHO de ta variable $nom .. (pour afficher la requête AVEC les variables dedans...) et que tu colles cette requête (celle qui s'affichera donc...) DIRECTEMENT dans ta BD... est-ce qu'elle fonctionne ?


NB: Tu utilises TOUJOURS ... l'ancienne extension mysql !!!!
Passe à PDO ou Mysqli
0
J'ai changé un peu mon code maintenant la date et l heure s enregistrent mais j ai des 0 pas la date que j ai chosi

<?php
include('bd.php');
?>
<?php
//recuperer les variable
$recuperer = isset($_POST['affichage'])?$_POST['affichage']:'';
$date = isset($_POST['date'])?$_POST['date']:null;
$heure = isset($_POST['heure'])?$_POST['heure']:null;
$heure = trim($heure);
$date = trim($date);

// date exist ou non
$query = "SELECT date FROM rdv WHERE date='$date'";
$result = mysql_query($query);

$count = mysql_num_rows($result);

if($count == 0){

if(mysql_query("INSERT INTO rdv(date,heure) VALUES('$date','$heure')"))
{
?>
<script>alert('ok');</script>
<?php
}
else
{
?>
<script>alert('erreur');</script>
<?php
}
}
// heure exist ou non
$query = "SELECT heure FROM rdv WHERE heure='$heure'";
$result = mysql_query($query);

$count = mysql_num_rows($result);

if($count == 0){

if(mysql_query("INSERT INTO rdv(date,heure) VALUES('$date','$heure')"))
{
?>
<script>alert('ok');</script>
<?php
}
else
{
?>
<script>alert('erreur');</script>
<?php
}
}



?>
<!DOCTYPE html>
<html>
<head>
<title></title>
<link href="./bootstrap/css/bootstrap.min.css" rel="stylesheet" media="screen">
<link href="../css/bootstrap-datetimepicker.min.css" rel="stylesheet" media="screen">
</head>

<body>
<div class="container">
<form action="" class="form-horizontal" role="form">
<fieldset>
<legend>Rendez vous</legend>
<table align="center">
<tr>

<div class="form-group">
<label for="dtp_input2" class="col-md-2 control-label">Date </label>
<div class="input-group date form_date col-md-5" data-date="" data-date-format="dd MM yyyy" data-link-field="dtp_input2" data-link-format="yyyy-mm-dd">
<input class="form-control" size="16" type="text" value="" readonly>
<span class="input-group-addon"><span class="glyphicon glyphicon-remove"></span></span>
<span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
</div>
<input type="hidden" id="dtp_input2" value="" name="date" /><br/>
</div>
</tr>
<tr>
<div class="form-group">
<label for="dtp_input3" class="col-md-2 control-label">Heure</label>
<div class="input-group date form_time col-md-5" data-date="" data-date-format="hh:ii" data-link-field="dtp_input3" data-link-format="hh:ii">
<input class="form-control" size="16" type="text" value="" readonly>
<span class="input-group-addon"><span class="glyphicon glyphicon-remove"></span></span>
<span class="input-group-addon"><span class="glyphicon glyphicon-time"></span></span>
</div>
<input type="hidden" id="dtp_input3" value="" name="heure" /><br/>
</div>
</tr>
</table>
</fieldset>
<fieldset>

<table border=0 width=100% cellspacing=5 >
<tr height=35>
<td align=right><input type='radio' name='code' value="echo"/>
<label >Echographie </label>
<td align=center >
<td align=left ><select id='code_exam' name='code_exam_CF003'>
<option value="CE0044">Echographie Abdominale (A Jeun)</option>
<option value="CE0046">Echo Appareil Urinaire (Vessie Pleine)</option>
<option value="CE0048">Echographie Epaule</option>
<option value="CE0041">Echographie Glandes Salivaires</option>
<option value="CE5360">Echographie Grossesse 2ème Trimestre</option>
<option value="CE0049">Echographie Hanche Adulte</option>
<option value="CE0050">Echographie Hanche Enfant</option>
<option value="CE0687">Echographie Mammaire</option>
<option value="CE0064">Echographie Grossesse 1er Trimestre (vessie pleine)</option>
<option value="CE7240">Echographie Grossesse 3ème Trimestre</option>
<option value="CE0042">Echo inguinale,paroi abdominale, des membres</option>
<option value="CE0051">Echographie utérus, ovaires , vessie,(vessie pleine)</option>
<option value="CE0058">Echographie prostatique (vessie pleine)</option>
<option value="CE0047">Echographie rénale (A jeûn)</option>
<option value="CE0061">Echographie Testiculaire</option>
<option value="CE0688">Echographie Tendon d'Achille</option>
<option value="CE0040">Echographie Thyroïdienne</option>
</select>


<tr height=35>
<td align=right><input type='radio' id='CF006' class="objChamp1 radio-but" name='code' value="CF006"/>
<label for="CF006" class="libele1">Mammographie</label>
<td align=center >
<td align=left > <select id='code_exam' name='code_exam_CF006'>
<option value="CE0028">Dépistage Isis 83</option>
<option value="CE0026">Mammographie 3D- Tomosynthèse</option>

</select>
<tr height=35>
<td align=right><input type='radio' id='CF008' class="objChamp1 radio-but" name='code' value="CF008"/>
<label for="CF008" class="libele1">Osteodensitometrie</label>
<td align=center >
<td align=left > <select id='code_exam' name='code_exam_CF008'>
<option value="CE8699">Composition Corporelle (IMC)</option>
<option value="CE0275">Osteodensitometrie</option>

</select>
<tr height=35>
<td width=40% align=right><input type='radio' id='CF001' class="objChamp1 radio-but" name='code' value="CF001"/>
<label for="CF001" class="libele1">Radiologie</label>
<td align=center width=10%>
<td align=left > <select id='code_exam' name='code_exam_CF001'>
<option value="CE0008">Abdomen sans Préparation (ASP)</option>
<option value="CE0693">Bassin, Hanche(s), sacrum, coccyx</option>
<option value="CE8696">Pied-Cheville-Talon</option>
<option value="CE0694">Coude, Avant-bras, Bras</option>
<option value="CE0001">Crâne, Massif facial, orbites, Sinus</option>
<option value="CE0695">Epaule, Clavicule, Ceinture Scapulaire</option>
<option value="CE0039">Genou(x)</option>
<option value="CE0029">Gonométrie,Télémétrie, Membres inférieurs</option>
<option value="CE0020">Côtes, Gril costal, Thorax</option>
<option value="CE8702">Jambe, Tibia Péroné</option>
<option value="CE0697">Main-Poignet-Doigt</option>
<option value="CE0007">Os Propres du nez (OPN)</option>
<option value="CE8695">Pieds en charge, Podométrie</option>
<option value="CE0022">Poumons</option>
<option value="CE0002">Rachis cervical</option>
<option value="CE0032">Rachis cervico-dorsal</option>
<option value="CE0033">Rachis cervico-dorso-lombaire+bassin</option>
<option value="CE0035">Rachis dorsal</option>
<option value="CE0031">Rachis Dorso-Lombaire</option>
<option value="CE8713">Rachis Lombo-sacré</option>
<option value="CE0021">Sternum</option>
<option value="CE8694">Télérachis (Scoliose)</option>

</select>
<tr height=35>
<td width=40% align=right><input type='radio' id='CF007' class="objChamp1 radio-but" name='code' value="CF007"/>
<label for="CF007" class="libele1">Radiologie Dentaire</label>

<td align=center width=10%>
<td align=left >
<select id='code_exam' name='code_exam_CF007'>
<option value="CE0690">ATM (Articulation Temporo-Mandibulaire)</option>
<option value="CE0134">Panoramique Dentaire</option>
<option value="CE0691">Panoramique + Telecrane</option>
<option value="CE0135">Telecrane</option>
</select>

<tr height=35>
<td colspan=2 align=center><input type="submit" name="affichage" value="envoyer">
<td align=left><input type="reset" value="annuler">
</table>
</fieldset>

</form>
</div>

<script type="text/javascript" src="./jquery/jquery-1.8.3.min.js" charset="UTF-8"></script>
<script type="text/javascript" src="./bootstrap/js/bootstrap.min.js"></script>
<script type="text/javascript" src="../js/bootstrap-datetimepicker.js" charset="UTF-8"></script>
<script type="text/javascript" src="../js/locales/bootstrap-datetimepicker.fr.js" charset="UTF-8"></script>
<script type="text/javascript">
$('.form_datetime').datetimepicker({
//language: 'fr',
weekStart: 1,
todayBtn: 1,
autoclose: 1,
todayHighlight: 1,
startView: 2,
forceParse: 0,
showMeridian: 1
});
$('.form_date').datetimepicker({
language: 'fr',
weekStart: 1,
todayBtn: 1,
autoclose: 1,
todayHighlight: 1,
startView: 2,
minView: 2,
forceParse: 0
});
$('.form_time').datetimepicker({
language: 'fr',
weekStart: 1,
todayBtn: 1,
autoclose: 1,
todayHighlight: 1,
startView: 1,
minView: 0,
maxView: 1,
forceParse: 0
});
</script>

</body>
</html>

0
jordane45 Messages postés 38285 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 13 novembre 2024 4 697
1 juin 2016 à 14:28
Déjà .. comme dit dans mon premier message :

tu utilises l'ancienne extension de mysql (considérée comme obsolète) merci de lire ceci :
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top
Puis de passer à PDO ou mysqli

Ensuite... si tu fais un echo de tes variables... qu'obtiens tu ?
La date que tu as mise dans ton input ... ou... rien....?
0
j obtient rien que des 00-00-0000
et pour l heure 00:00
0
jordane45 Messages postés 38285 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 13 novembre 2024 4 697
2 juin 2016 à 00:20
Le souci vient donc de ton javascript.....
Je ne vois pas dans ton code ... l'endroit où tu indiques que le champ à remplir après avoir choisi une date, c'est l'input dont l'id est dtp_input2dtp_input2
<input type="hidden" id="dtp_input2" value="" name="date" /><br/>


Dans les initialisation de tes datepicker... je pense que tu as oublié une partie du code....
un truc du genre :
on('changeDate', function(e){
      $('#dtp_input2').val(e.format('yyyy/mm/dd'))
    })

mais là.. à toi de savoir ....
(tu reprends la doc et/ou l'exemple que tu as utilisé pour écrire ton code ! )
De plus... ça devient un souci Javascript... et n'a plus rien à voir avec du php !
0