Page 1 sur 2

Date dans un INPUT

Posté : 08 août 2006, 23:03
par dunbar
Bonjour

Je voudrais savoir s'il serais possible de faire en sorte que la date du jour se place automatiquement dans un champs INPUT ?
Et une seconde question est t'il possible de créer dans une TABLE les numéro de semaine ?

D'avance merci :wink:

Posté : 08 août 2006, 23:11
par iclo
Bonjour,

Pour ta première question : oui, tu peux générer automatiquement un formulaire en php, et affecter des valeurs par défaut à un input text en utilisant l'atribut value. Pour récupérer la date courante en php, tu as différentes fonctions, une petite recherche dans les tutoriaux, te renseignera sur le sujet.

Pour ta deuxième question, j'ai pas compris grand chose, il faudrait que tu expliques un peu plus.

Posté : 08 août 2006, 23:14
par dunbar
Bonjour,

Pour ta première question : oui, tu peux générer automatiquement un formulaire en php, et affecter des valeurs par défaut à un input text en utilisant l'atribut value. Pour récupérer la date courante en php, tu as différentes fonctions, une petite recherche dans les tutoriaux, te renseignera sur le sujet.

Pour ta deuxième question, j'ai pas compris grand chose, il faudrait que tu expliques un peu plus.
Oui effectivement je ne me comprenais pas moi-même :lol: le but est de créer une TABLE numéro de semaine pour plus loin faire une recherche dans un TABLEAU par semaine et non plus par mois.
Donc je voudrais faire en sorte qu'un champs de TABLE reprenne les numéro de semaine de la semaine 1 à la semaine 52

Merci

Posté : 08 août 2006, 23:16
par iclo
Ok, mais qu'est ce qui te pose problème ?

Posté : 08 août 2006, 23:17
par dunbar
Ok, mais qu'est ce qui te pose problème ?
De faire en sorte que MySQL génére le numero de semaine d'après un enregistrement.

Posté : 09 août 2006, 09:50
par zeus
C'est souvent une mauvaise idée de stocker des données comme ça en base de données :-k

Les numéros de semaines sont très simple à obtenir et c'est souvent une erreur de les stocker.

Explique nous pourquoi tu veux ces numéros de semaines et comment tu comptes les utiliser ;)

Posté : 09 août 2006, 10:20
par Tictac
Je pense que le plus simple est que tu enregistre la date d'enregistrement c'est à dire créer dans ta TABLE un champ date_enregistrement
Quand tu enregistre tes données , pour ce champ tu mets NOW()

Tu auras donc la date exacte d'enregistrement et tu pourras en déduire la semaine via une requête.

Consulte ceci => http://dev.mysql.com/doc/refman/5.0/fr/ ... tions.html
WEEKOFYEAR(date)

Retourne le numéro de semaine dans l'année, sous forme d'un nombre compris entre 1 et 53.

mysql> SELECT WEEKOFYEAR('1998-02-20');
-> 8

WEEKOFYEAR() est disponible depuis MySQL 4.1.1.

Posté : 09 août 2006, 10:23
par dunbar
C'est souvent une mauvaise idée de stocker des données comme ça en base de données :-k

Les numéros de semaines sont très simple à obtenir et c'est souvent une erreur de les stocker.

Explique nous pourquoi tu veux ces numéros de semaines et comment tu comptes les utiliser ;)
Je veux les numéros de semaine pour pouvoir faire une recherche parsemaine de prestations dans un tableau, se qui me permet de ne plus devoir le faire par mois et avoir beaucoup moins de résultat.
Je compte faire ceci
<input name='Idate' type='text' value='<? echo date("d-m-Y") ?>'>
et mon fichier validation
list($jour,$mois,$annee) = explode('-',$_POST['Idate']);
$num_sem = date('W', mktime(0,0,0,$mois,$jour,$annee));
$query = 'INSERT INTO nomtable (semaine) VALUES ($num_sem);
Merci

Posté : 09 août 2006, 10:47
par zeus
Et si, pour chaque prestation, tu stocke la date de création (comme indiqué plus haut) et lorsque tu veux les prestations par semaine, tu fait une requete qui traduit cette date en numéro de semaine ?

Regarde un peu ce lien (surtout DATE_FORMAT) : http://dev.mysql.com/doc/refman/5.0/fr/ ... tions.html

Posté : 09 août 2006, 10:53
par dunbar
Et si, pour chaque prestation, tu stocke la date de création (comme indiqué plus haut) et lorsque tu veux les prestations par semaine, tu fait une requete qui traduit cette date en numéro de semaine ?

Regarde un peu ce lien (surtout DATE_FORMAT) : http://dev.mysql.com/doc/refman/5.0/fr/ ... tions.html
:afraid: Euuuh oui effectivement c'est plus simple encore :wink: merci je ne connaissais pas.
Mais là me vient une autre question qui connait un bon tuto sur comment faire une recherche dans un tableau à partir d'un INPUT recherche
exemple l'utilisateur tape semaine 42 et le resultat serasi les encodages de la semaine 42 :lol:

Posté : 09 août 2006, 11:06
par Tictac
Merci de me répeter Zeus , je pense qu'il avait pas vu mon post car on a du écrire un post en meme temps ;)

dunbar => 09 Aoû 2006, 09:23

Tictac => 09 Aoû 2006, 09:20

Posté : 09 août 2006, 11:06
par zeus
Dans ta requete SQL, il suffit d'ajouter une clause WHERE dans laquelle tu compares le numéro de semaine fourni à la traduction de la date de la prestation en numéro de semaine ;)

Posté : 09 août 2006, 11:07
par dunbar
Merci de me répeter Zeus , je pense qu'il avait pas vu mon post car on a du écrire un post en meme temps ;)

dunbar => 09 Aoû 2006, 09:23

Tictac => 09 Aoû 2006, 09:20
Oui effectivement merci également :wink:

Posté : 09 août 2006, 11:46
par Tictac
Voilà le code qui fonctionne pour retrouver les infos pour une semaine envoyé par $_POST
<?
//la requete pour récupérer les datas pour la semaine choisi "$_POST['semaine']"
$qry = mysql_query("SELECT * FROM data WHERE WEEKOFYEAR(data_date)='".$_POST['semaine']."'") or die (mysql_error());

echo mysql_num_rows($qry)."<br>";
while($data = mysql_fetch_assoc($qry))
	{
	echo "<li>".$data['data_txt']."</li>";
	}
?>
Ma table pour test =>

Code : Tout sélectionner

CREATE TABLE `data` ( `data_id` int(11) NOT NULL auto_increment, `data_date` date NOT NULL default '0000-00-00', `data_txt` varchar(255) NOT NULL default '', PRIMARY KEY (`data_id`) )

Posté : 09 août 2006, 11:48
par dunbar
Génia et Merci beaucoup :lol: