Pb avec datetime [php]

Résolu/Fermé
txiki Messages postés 6596 Date d'inscription mercredi 30 janvier 2002 Statut Contributeur Dernière intervention 22 février 2024 - 8 mars 2012 à 15:12
AssassinTourist Messages postés 5710 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 - 8 mars 2012 à 17:41
Bonjour,
J'ai un big souci avec l'écriture du datetime dans une table. J'ai testé pleins de scripts, vu pas mal de tuto mais sans résoudre quoique ce soit. Dans mon formulaire j'ai un champ caché comme ceci:
<input type="hidden" name="Publication" id="Publication" value="<?php $Publication date("now())");?>"></p>
.

Dans le fichier traitement.php j'ai ceci:
// On déclare les variables (post car la méthode d'envoi du formulaire est POST
$id = ($_GET['ID']);
$Activite = (htmlspecialchars($_POST['Activite']));
$Lieu = (htmlspecialchars($_POST['Lieu']));
$Date_Activite = (htmlspecialchars($_POST['Date_Activite'])); // le champ est de type varchars au lieu de date à cause de la possible utilisation du calendrier.
$Depart = (htmlspecialchars($_POST['Depart']));
$Participants = (htmlspecialchars($_POST['Participants']));
$Comment = (htmlspecialchars($_POST['Comment']));
$Publication = ($_POST['Publication']); // format champ en datetime
?>
. Puis cette requete:
$sql = ("INSERT INTO sorties (ID, Activite, Lieu, Date_Activite, Depart, Participants, Comment, Publication) VALUES ('', '".$Activite."', '".$Lieu."', '".$Date_Activite."', '".$Depart."', '".$Participants."', '".$Comment."', '".$Publication."')"); 
. La méthode du calendrier fonctionne très bien. Vous pouvez d'ailleurs tester sur http://saucede.free.fr/index.php?page=Ajout_Sortie&lang=Fr (Login=test & Pass=toto64). la table sera vidée à la fin des tests donc aucunes craintes. Vous pourrez voir le résultat via le menu Les activités/Les sorties à venir.
PS: ne tenez pas compte du textarea, la mise en forme fonctionne mais pas la preview et son contenu ne s'écrit pas dans la table.

Merci beaucoup pour vos lumières (je commence à saturer et me bloque pour une broutille sans doutes).




Le bonheur est la seule chose que l'on peut donner sans l'avoir.
A voir également:

2 réponses

AssassinTourist Messages postés 5710 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 1 311
8 mars 2012 à 16:56
Bonjour,

Avant de faire n'importe quel sql, es-tu sûr de ton champ caché ? Si tu fais un echo de la valeur censément de $Publication

Parce que : value="<?php $Publication date("now())");?>" ???

1) pour qu'il prenne en compte la valeur, il faut faire un echo $variable
2) deux variables séparées par un espace ? Mais que cherches-tu à faire ?
3) Tu as des guillemets dans des guillemets. Ca n'aime pas du tout. Entoure ton value de simple quote ' et non de guillemets "
0
txiki Messages postés 6596 Date d'inscription mercredi 30 janvier 2002 Statut Contributeur Dernière intervention 22 février 2024 517
8 mars 2012 à 17:20
Salut et merci AssassinTourist,
Tu pense bien que j'ai déjà essayé tous ça mais c'est la seule syntaxe qui ne m'affiche pas d'erreur php.
La $Publication est le nom que j'ai donné au champ caché pour ne pas le nommer date (j'ai vu un peu partout que cela pouvait poser problème car c'est un mot clé réservé.

"deux variables séparées par un espace ? Mais que cherches-tu à faire ?"

Tout bêtement écrire la date de la publication de l'info dans le champ de la table pour l'afficher au format jj-mm-aaaa à %h %m (en cliquant sur un des liens de la liste ici: http://saucede.free.fr/index.php?page=Liste_Sorties&lang=Fr

Tu pense que je pourrais nommer ce champ tout bêtement date ? Je n'aurais pas de souci ?

Si tu vas sur le site tu peux tester la mise en forme du textarea mais le champ éponyme dans la table n'est pas renseigné. J'ai des lacunes en php (Traitement_Fiche Fr.php) et suis certain que ça vient de là mais je ne vois rien.
Merci beaucoup déjà pour ce Pb de date.

Le bonheur est la seule chose que l'on peut donner sans l'avoir.
0
AssassinTourist Messages postés 5710 Date d'inscription lundi 16 janvier 2012 Statut Contributeur Dernière intervention 29 février 2024 1 311
Modifié par AssassinTourist le 8/03/2012 à 17:41
Non, non, tu ne pourras pas le nommer date.

Je crois comprendre ce que tu veux faire...
Mais... on est bien d'accord que ce champ Publication renverra la date de maintenant, hein ? Alors pourquoi ne pas enlever ce champ caché et faire ça direction dans ton php ?
Et puis, je pense que tu mélanges beaucoup de choses, là > < now() en php, ça n'existe pas... Pour faire ce que tu veux faire :
$Publication = date("d-m-Y \a H:i"); 
echo "publication le ". $Publication; // pour que tu vois ce que ça donne

Un peu de manuel si tu veux customiser : https://www.php.net/manual/fr/function.date.php
0