passage d'une date du type j/m/y en y/m/d

MICKA
Invité n'ayant pas de compte PHPfrance

13 mars 2006, 11:19

bonjour.

je souhaite recupérer à partir d'un input text en post une date de type fr (j/m/y) et la convertir afin de la passer dans la base au format mysql soit (y-m-d) et la reconvertir pour l'affichage au format j/m/d.

j'ai uniquement php 4

Mammouth du PHP | 19672 Messages

13 mars 2006, 11:23

Une recherche dans le forum t'aurait permi de trouver ce sujet déjà traité et résolu par d'autres : ICI par exemple
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

MICKA
Invité n'ayant pas de compte PHPfrance

13 mars 2006, 15:26

merci je vais tester ca

MICKA
Invité n'ayant pas de compte PHPfrance

13 mars 2006, 16:49

apres recupereation du code de convertion de date que j'applique à mon code, le passage dans la base ne s'effectu pas.
quelqu'un voit il d'ou vient le soucis ?



$connexion = mysql_connect('l***,'***','***');// Connexion à la base de donnée
switch ($_POST['bouton'])
{

	case 'libre' :
	
	 $date_libre = $_POST['date_libre'];
	$masque ="#(\d{2}) /(\d{2})/(\d{4})#";
	$date_sql_libre = preg_replace ($masque, "$3-$2-$1", $date_libre); 
	
	
		if($date_sql_libre < date("Y-m-d"))
	{
		echo "<script languague=\"javascript\">location.href='portables.php?error=entrer une date valide de liberation'</script>";
	}
	if(($date_sql_libre  == ""){
	echo "<script languague=\"javascript\">location.href='portables.php?error=entrer une date de liberation'</script>";
	}
	if ($_GET['port'] !=""){
	$requete6 = "INSERT INTO `detail` (`num_portable`, `matricule`, `date`,`date_inter`, `id_status`, `commentaire`) VALUES ('".$_SESSION['portable']."', '".$_POST['matricule']."', '".$date_sql_libre."','".date("Y-m-d")."', '1', '".$_POST['commentaire']."');";// requete
	$resultat6 = mysql_db_query('base_portable', $requete6, $connexion) or die('Erreur de selection '.mysql_error()); // execution de la requete
	}
	$requete = "INSERT INTO `detail` (`num_portable`, `matricule`, `date`,`date_inter`, `id_status`, `commentaire`) VALUES ('".$_SESSION['portable']."', '".$_POST['matricule']."', '".$date_sql_libre."','".date("Y-m-d")."', '1', '".$_POST['commentaire']."');";// requete
	$requete3 = "UPDATE portable SET portable.id_status = 1 WHERE num_portable = '".$_SESSION['portable']."'   ";
	$resultat3 = mysql_db_query('base', $requete3, $connexion) or die('Erreur de selection '.mysql_error()); // execution de la requete

	break;
mysql_close($connexion);// Fermeture de la connexion

Invité
Invité n'ayant pas de compte PHPfrance

13 mars 2006, 18:46

Tu peux utiliser NOW() au lieu de '".date("Y-m-d")."'

MICKA
Invité n'ayant pas de compte PHPfrance

14 mars 2006, 12:50

[RESOLUT]

function date_inverse($maDate)
{
	$date = explode("-", $maDate);
	$date = $date[2]."-".$date[1]."-".$date[0];
	return $date;
}
$date = date_fr();
echo $date["date"];