Page 1 sur 3
Strftime et strtotime
Posté : 13 mai 2013, 17:11
par NUAGE
Bonjour,
J'ai un problème avec le format de la date, je veux la mettre sous format français. Quand j'insère la date 20/05/2013, ça me renvoie 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 '', strtotime(20/05/2013))', '')' at line 1
<?php
include("connexion.php");
$nom=isset($_POST['nom'])?$_POST['nom']:"";
$daten=isset($_POST['date'])?$_POST['date']:"";
$date2=isset($_POST['date2'])?$_POST['date2]:"";
setlocale(LC_TIME, "fr_FR.utf-8");
//création de la requête SQL
$sql= "INSERT INTO `Formation` (`idFormation`, `nom`, `date`, `date2`) VALUES (' ', '$nom', strftime('%A %d %B %Y', strtotime($date))'., '$date2');";
$requete = mysql_query($sql) or die( mysql_error() ) ;
if($requete)
{
echo("La formation a été créé") ;
}
else
{
echo("La formation n'a pas été créé") ;
}
Merci de votre aide.
Re: Strftime et strtotime
Posté : 13 mai 2013, 17:24
par ghost5922
Bonjour,
je ne connais pas cette fonction mais il a quelques erreur dans ton code avoir
tu mets $daten ou $date2
et dans la requête $date et $date2
<?php
include("connexion.php");
$nom=isset($_POST['nom'])?$_POST['nom']:"";
$date=isset($_POST['date'])?$_POST['date']:"";
$date2=isset($_POST['date2'])?$_POST['date2']:"";
setlocale(LC_TIME, "fr_FR.utf-8");
//création de la requête SQL
$sql= "INSERT INTO `Formation` (`idFormation`, `nom`, `date`, `date2`) VALUES (' ', '$nom', ".strftime('%A %d %B %Y', strtotime($date))."', '$date2');";
$requete = mysql_query($sql) or die( mysql_error() ) ;
if($requete)
{
echo("La formation a été créé") ;
}
else
{
echo("La formation n'a pas été créé") ;
}
?>
teste comme cela

Re: Strftime et strtotime
Posté : 14 mai 2013, 09:08
par NUAGE
Bonjour !
Merci ghost5922 d'avoir répondu, j'ai testé et j'ai eu 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 '20 May 2013', '')' at line 1
Re: Strftime et strtotime
Posté : 14 mai 2013, 09:39
par Spols
et ceci ?
<?php
include("connexion.php");
$nom=isset($_POST['nom'])?$_POST['nom']:"";
$date=isset($_POST['date'])?$_POST['date']:"";
$date2=isset($_POST['date2'])?$_POST['date2']:"";
setlocale(LC_TIME, "fr_FR.utf-8");
//création de la requête SQL
$sql= "INSERT INTO `Formation` (`idFormation`, `nom`, `date`, `date2`) VALUES (' ', '$nom', '".strftime('%A %d %B %Y', strtotime($date))."', '$date2');";
$requete = mysql_query($sql) or die( mysql_error() ) ;
if($requete)
{
echo("La formation a été créé") ;
}
else
{
echo("La formation n'a pas été créé") ;
}
?>
Il manquait probablement un ' dans ta requète
Re: Strftime et strtotime
Posté : 14 mai 2013, 09:44
par NUAGE
J'ai essayé, l'insertion se fait mais aucun changement dans le format de la date...
Re: Strftime et strtotime
Posté : 14 mai 2013, 10:13
par ghost5922
Bonjour,
tu peux nous donne les valeurs de $date et $date2 stp
Re: Strftime et strtotime
Posté : 14 mai 2013, 10:19
par NUAGE
Pour l'instant je ne teste que $date
Dans mon input, j'ai 20/05/2013. J'ai peut-être pas compris mais c'est ce que vous me demander ?
Re: Strftime et strtotime
Posté : 14 mai 2013, 10:26
par ghost5922
Bonjour,
tu peux essaie avec cette date pour voir 05/25/2013 stp
Re: Strftime et strtotime
Posté : 14 mai 2013, 10:31
par NUAGE
Toujours rien...
Re: Strftime et strtotime
Posté : 14 mai 2013, 10:37
par ghost5922
Bonjour,
tu as bien mi mm/jj/aaaa juste pour etre sur :p
car moi cela marche
$date=strftime("%A %d %B %Y", strtotime("05/25/2013")) ;
echo $date;
affiche : Saturday 25 May 2013
Re: Strftime et strtotime
Posté : 14 mai 2013, 10:42
par ghost5922
si je mets
setlocale(LC_TIME, "fr_FR.utf-8");
samedi 25 mai 2013

Re: Strftime et strtotime
Posté : 14 mai 2013, 10:49
par NUAGE
Dans formulaire c'est ce format là qu'il prend 2013-05-04
Re: Strftime et strtotime
Posté : 14 mai 2013, 10:50
par NUAGE
Dans formulaire c'est ce format là qu'il prend 2013-05-04 et moi je veux pouvoir insérer de cette façon 04/05/2013
Re: Strftime et strtotime
Posté : 14 mai 2013, 10:51
par ghost5922
Bonjour,
cela marche aussi
setlocale(LC_TIME, "fr_FR.utf-8");
$date='2013-05-04';
$d=strftime('%A %d %B %Y', strtotime($date));
echo $d;
samedi 04 mai 2013
Re: Strftime et strtotime
Posté : 14 mai 2013, 10:53
par ghost5922
Test ce code
<?php
include("connexion.php");
$nom=isset($_POST['nom'])?$_POST['nom']:"";
$date=isset($_POST['date'])?$_POST['date']:"";
$date2=isset($_POST['date2'])?$_POST['date2']:"";
setlocale(LC_TIME, "fr_FR.utf-8");
$d=strftime('%A %d %B %Y', strtotime($date));
$sql= "INSERT INTO `Formation` (`idFormation`, `nom`, `date`, `date2`) VALUES (' ', '$nom', '$d', '$date2');";
$requete = mysql_query($sql) or die( mysql_error() ) ;
if($requete)
{
echo("La formation a été créé") ;
}
else
{
echo("La formation n'a pas été créé") ;
}
?>
si ca marche pas merci de poster la structure de la table
