Bonsoir tout le monde,je suis débutante et j'ai vraiment du mal à corriger mes erreurs :(.Voilà,je viens de réaliser un formulaire d'ajout "d'un patient" et à chaque fois la date s'affiche dans ma base 00-00-0000 mais quand j'insère des valeurs à partir de ma table (directement) tout est ok.
<?php session_start(); // On démarre la session AVANT toute chose ?> <!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>Document sans titre</title> </head>
<body> <?php //connection au serveur $cnx = mysql_connect( "localhost", "root", "" ) ; // test la connection if ( ! $cnx ) die ("connection impossible" ); $db = mysql_select_db("cliniquegenerale"); //verifier si le boutton submit est appuié if(isset($_POST['valider']))
{ if(($_POST['nom']!='')&&($_POST['prenom']!=''))
//récupération des valeurs des champs: //nom: $nom = $_POST["nom"] ; //prenom: $prenom = $_POST["prenom"] ; //Sexe $sexe = $_POST["sexe"]; //Date de naissance: // Si toutes les variables nécessaires à la création de la date sont définies // est que la date est valide (checkdate()) if(isset($_POST['annee']) && isset($_POST['mois']) && isset($_POST['jour']) && checkdate($_POST['mois'], $_POST['jour'], $_POST['annee'])) { // création de la date au format date MySQL $date = $_POST['annee'].'-'.$_POST['mois'].'-'.$_POST['jour']; // La requête d'insertion en utilisant la variable $date /*$sql = "INSERT INTO Ajout_patient SET nom = '".$nom."', Date_naissance= '".$date."'";*/ }
//création de la requête SQL: $sql = "INSERT INTO Ajout_patient (nom, prenom,sexe,Date_naissance, adresse, tel,comments,choix) VALUES ( '$nom', '$prenom', '$sexe','$adresse', '$tel','$remarque','$choix','$date') " ;
//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") ; } } ?> </body> </html>
Ton code est illisible... Commence déjà par utiliser les balises code.
$foo = 12 ;
Et puis pas besoin de tout ton code, juste le champ qui gère ta date ainsi que le code qui enregistre ça en base... Ca devrait prendre 20 lignes à tout péter.
Développeur Web Freelance. Spécialiste Symfony et Laravel.
Dsl :s !! c'est quoi cette balise ?? elle fait quoi au juste ??
Pour la partie date
if(isset($_POST['annee']) && isset($_POST['mois']) && isset($_POST['jour']) && checkdate($_POST['mois'], $_POST['jour'], $_POST['annee'])) { // création de la date au format date MySQL $date = $_POST['annee'].'-'.$_POST['mois'].'-'.$_POST['jour'];
//création de la requête SQL: $sql = "INSERT INTO Ajout_patient (nom, prenom,sexe,Date_naissance, adresse, tel,comments,choix) VALUES ( '$nom', '$prenom', '$sexe','$adresse', '$tel','$remarque','$choix','$date') " ;
Wow.... Bah t'es motivé à taper des options toi au moin... Commence simplement par utiliser un <input type="date" name="birthDate" required> et ce sera déjà plus simple
--> Je vous ai aidé? Pensez au +1! Le problème est résolu? Pensez à mettre votre topic en résolu! <--
"La connaissance de l'Homme ne peut pas s'étendre au-delà de son expérience propre", Locke
date de naissance dans un formulaire
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Développeur Web Freelance. Spécialiste Symfony et Laravel.