Rechercher : dans
Par :

Inserer date automatiquemen- php

Dernière réponse le 1 sep 2009 à 17:02:16 abdoul, le 1 sep 2009 à 11:32:47 
 Signaler ce message aux modérateurs

Bonjour, j'ai un probleme pour inserer la date dans ma base de donnée. En fait j'ai un formulaire qui est lié à un base de donnée qui contient un champ dtescte de type DATETIME, et je voudrais qu'à l'enregistrement la date se fasse aussi automatiquement mais j'y arrive pas. je voudrais aussi qu'après l'enregistrement qu'il m'affiche toutes les lignes. Est ce que je pourrais avoir de l'aide. Merci d'avance
Voici mon code:

<?php
include("config.php");
include("req_buttons.php");
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Document sans titre</title>
<style type="text/css">
<!--
.Style1 { font-size: 24px;
font-style: italic;
font-weight: bold;
cursor: n-resize;
filter: Invert;
color: #3399FF;
}
.Style3 {
font-size: 24px;
font-family: Georgia, "Times New Roman", Times, serif;
}
.Style5 {font-size: 24px; font-family: Georgia, "Times New Roman", Times, serif; font-style: italic; }
-->
</style>
</head>

<body>
<div align="center" class="Style1">ENREGISTREMENT D'UN NOUVEAU CLIENT <img src="../../date/users.gif" ></div>

<p><table width="361" border="2" align="center" bordercolor="#D4D0C8">
<tr>
<td width="349"><form name="form1" method="post" action="addclient.php">
<table width="346" border="0">
<tr>
<td width="161"><div align="center"><span class="Style5">Nom société : </span></div></td>
<td width="175"><label>
<input type="text" name="scte">
</label></td>
</tr>
<tr>
<td class="Style3"><div align="center"><em>Adresse :</em></div></td>
<td><label>
<textarea name="adrs"></textarea>
</label></td>
</tr>
<tr>
<td class="Style3"><div align="center"><em>Téléphone </em>: </div></td>
<td><label>
<input type="text" name="tel">
</label></td>
</tr>
<tr>
<td class="Style3"><div align="center"><em>Fax : </em></div></td>
<td><label>
<input type="text" name="fax">
</label></td>
</tr>
<tr>
<td colspan="2"><label><div align="center">
<?php buttons("insert");?></div>
</label> </td>
</tr>
</table>

</form>
</td>
</tr>
</table>
<?php
if (isset($_POST['insert'])){
$nomscte=$_POST['scte'];
$adrsgeo=$_POST['adrs'];
$tel=$_POST['tel'];
$fax=$_POST['fax'];
$date=Date("d/m/Y H:i:s");

$sql='INSERT INTO `amd`.`societe` (`codescte` ,`nomscte` ,`adrsgeo` ,`tel`,`fax`,`dtescte`)
VALUES ("" , "'.$nomscte.'","'.$adrsgeo.'","'.$tel.'","'.$fax.'","'.$date.'");';
mysql_query($sql) or die ('Erreur SQL!'.$sql.'<br />'.mysql_error());
}
?>

</body>
</html>

Configuration: Windows 2003
Firefox 3.5.2

Meilleures réponses pour « inserer date automatiquemen php » dans :
Vérifier le format d'une date en PHP VoirIl existe plusieurs méthodes pour verifier le format d'une date en PHP, vous pouvez par exemple découper la chaîne puis tester les valeurs de chaque élément. Plus simplement nous utiliserons les expressions régulières. Pour valider une date au...
Javascript - Implantation du code VoirA quel emplacement insérer le Javascript dans votre page HTML Il existe plusieurs façons d'inclure du JavaScript dans une page HTML : Grâce à la balise En mettant le code dans un fichier Grâce aux événements Dans la balise...
PHP - Affichage de texte sur le navigateur VoirLe but de PHP est de permettre la création de pages web dynamiques, ainsi son but premier est de pouvoir envoyer des données au navigateur. Les trois fonctions standards PHP fournit 3 fonctions permettant d'envoyer du texte au navigateur. Ces...

1

avion-f16, le 1 sep 2009 à 13:10:02

Mets ton champs 'date' en int et donne lors de l'insertion, donne lui comme valeur le timestamp actuel (que tu peux récupérer avec la fonction time() ).
Ensuite, quand tu dois afficher la date, utilisation la fonction date(string formatage, int timestamp). Par exemple : date('j/n/Y à G:i', $client['date']) donnera 1/9/2009 à 13:09 Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu­ lui dis de faire.

Répondre à avion-f16

2

abdoul, le 1 sep 2009 à 13:17:12

Slt merci de m'avoir repondu et je m'excuse de poser cette question! Je ne comprend pa qd tu di "donne lui la valeur timestamp actuel" peut tu me dire comment faire et quand tu dis donne lui de l'insertion, est ce que je dois ajouter un champ date dans on formulaire?

Répondre à abdoul

3

avion-f16, le 1 sep 2009 à 13:20:38

Quand tu fais la requête pour insérer le client dans la table, mets dans le champs 'date' le timestamp actuel. Pour récupérer le timestamp (dans une variable ou directement sur la requête), utilise la fonction time().
Exemple :

$sql = 'INSERT INTO clients(nom,prenom,date,password) VALUES("Némard","Jean",'.time().',"'.md5('1234').'")';
Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.

Répondre à avion-f16

4

abdoul, le 1 sep 2009 à 13:32:48

Desolé de te déranger à nouveau je l'ai fait mais tjrs rien. Je t'emmene le code peut être que je m'y suis mal pris
j'ai aussi changé le type du champ dtescte en timestamp et j'ai mis comme defaut current timestamp

code:
<?php
include("config.php");
include("req_buttons.php");

?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Document sans titre</title>
</head>

<body>
<div align="center" class="Style1">ENREGISTREMENT D'UN NOUVEAU CLIENT <img src="../../date/users.gif" ></div>

<p><table width="361" border="2" align="center" bordercolor="#D4D0C8">
<tr>
<td width="349"><form name="form1" method="post" action="addclient1.php">
<table width="346" border="0">
<tr>
<td width="161"><div align="center"><span class="Style5">Nom société : </span></div></td>
<td width="175"><label>
<input type="text" name="scte">
</label></td>
</tr>
<tr>
<td class="Style3"><div align="center"><em>Adresse :</em></div></td>
<td><label>
<textarea name="adrs"></textarea>
</label></td>
</tr>
<tr>
<td class="Style3"><div align="center"><em>Téléphone </em>: </div></td>
<td><label>
<input type="text" name="tel">
</label></td>
</tr>
<tr>
<td class="Style3"><div align="center"><em>Fax : </em></div></td>
<td><label>
<input type="text" name="fax">
</label></td>
</tr>
<tr>
<td colspan="2"><label><div align="center">
<?php buttons("insert");?></div>
</label> </td>
</tr>
</table>

</form>
</td>
</tr>
</table>
<?php
if (isset($_POST['insert'])){
$nomscte=$_POST['scte'];
$adrsgeo=$_POST['adrs'];
$tel=$_POST['tel'];
$fax=$_POST['fax'];

$sql='INSERT INTO `amd`.`societe` (`codescte` ,`nomscte` ,`adrsgeo` ,`tel`,`fax`,`dtescte`)
VALUES ("" , "'.$nomscte.'","'.$adrsgeo.'","'.$tel.'","'.$fax.'","'.time().'");';
mysql_query($sql) or die ('Erreur SQL!'.$sql.'<br />'.mysql_error());
}
?>

</body>
</html>

Répondre à abdoul

5

avion-f16, le 1 sep 2009 à 13:36:50

j'ai aussi changé le type du champ dtescte en timestamp et j'ai mis comme defaut current timestamp 

Je t'ai dis de le mettre en INT ...

Remplace
$sql='INSERT INTO `amd`.`societe` (`codescte` ,`nomscte` ,`adrsgeo` ,`tel`,`fax`,`dtescte`)
VALUES ("" , "'.$nomscte.'","'.$adrsgeo.'","'.$tel.'","'.$fax.'","'.time().'");';
mysql_query($sql) or die ('Erreur SQL!'.$sql.'<br />'.mysql_error()); 
Par
$sql='INSERT INTO `amd`.`societe` (`codescte` ,`nomscte` ,`adrsgeo` ,`tel`,`fax`,`dtescte`)
VALUES ("" , "'.$nomscte.'","'.$adrsgeo.'","'.$tel.'","'.$fax.'",'.time().');';
mysql_query($sql) or die ('Erreur SQL!'.$sql.'<br />'.mysql_error()); 
Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.

Répondre à avion-f16

6

abdoul, le 1 sep 2009 à 13:47:57

J'ai fait com tu m'a dis mais voilà ce qu'il ya dans le champs dtescte de la base de donnée:1251805321
mais di moi la fonction time() on ne la definit pas quelque part?

Répondre à abdoul

7

avion-f16, le 1 sep 2009 à 13:52:54

1251805321 : C'était le timestamp qu'il était au moment de l'insertion.
Pour ta culture, le timestamp est le nombre qu'on utilise en informatique pour se répérer dans le temps (c'est plus léger de stocker un nombre qu'une chaine comme '2009-12-31-23-59-59'). Ce nombre représente le nombre de seconde écoulées depuis le 1 janvier 1970.
La fonction time() ne est native à PHP est n'a pas besoin de paramètre pour retourner le timestamp.
C'est ensuite grâce à la fonction date en PHP que l'on peut faire des traitement sur le timestamps spécifier (si tu n'en spécifie pas, ça donnera la date actuelle). Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu­ lui dis de faire.

Répondre à avion-f16

8

abdoul, le 1 sep 2009 à 14:08:12

Excuse moi encore mais j'aurai voulu qu'il me donne la date et l'heure! comment je fais maintenant?
Aussi qd tu disasi:"Ensuite, quand tu dois afficher la date, utilisation la fonction date(string formatage, int timestamp). Par exemple : date('j/n/Y à G:i', $client['date']) donnera 1/9/2009 à 13:09"ça c'est si je veux qu'il m'affiche après une requete par exemple ou c pour l'insertion?

Répondre à abdoul

9

avion-f16, le 1 sep 2009 à 14:13:27

Quand tu affiches le client après une requête.
Remplace biensûr $client['date'] par la variable qui contient le timestamp de son inscription. Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu­ lui dis de faire.

Répondre à avion-f16

10

abdoul, le 1 sep 2009 à 14:58:39

Je dois vraiment te fatiguer mais stp peut tu me donner un exemple de requete parce ke vraimetn je ne sais plu koi faire. Pitiéééééé

Répondre à abdoul

11

avion-f16, le 1 sep 2009 à 15:05:50

Fait un echo de date('j/n/Y à G:i', $client['dtescte']) pour afficher la date.
Remplace $client par la variable que tu mets là :

while(<souligne>$tavariable</souligne> = mysql_fetch_...
Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.

Répondre à avion-f16

12

abdoul, le 1 sep 2009 à 15:26:07

Bon ça va j'abandonne j'y comprend rien de toute façon.
Merci pour toute l'aide que tu m'a apporté!

Répondre à abdoul

13

 abdoul, le 1 sep 2009 à 17:02:16

ça y est ça y est enfin ça maaaaaaaaaaaaarche merci beaucoup avion-f16

Répondre à abdoul
Collection CommentÇaMarche.net