Date dans un INPUT

ViPHP
ViPHP | 2291 Messages

08 août 2006, 23:03

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:
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

ViPHP
ViPHP | 2144 Messages

08 août 2006, 23:11

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.

ViPHP
ViPHP | 2291 Messages

08 août 2006, 23:14

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
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

ViPHP
ViPHP | 2144 Messages

08 août 2006, 23:16

Ok, mais qu'est ce qui te pose problème ?

ViPHP
ViPHP | 2291 Messages

08 août 2006, 23:17

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.
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

09 août 2006, 09:50

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 ;)
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphant du PHP | 353 Messages

09 août 2006, 10:20

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.

ViPHP
ViPHP | 2291 Messages

09 août 2006, 10:23

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
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

09 août 2006, 10:47

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
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

ViPHP
ViPHP | 2291 Messages

09 août 2006, 10:53

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:
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Eléphant du PHP | 353 Messages

09 août 2006, 11:06

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

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

09 août 2006, 11:06

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 ;)
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

ViPHP
ViPHP | 2291 Messages

09 août 2006, 11:07

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:
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.

Eléphant du PHP | 353 Messages

09 août 2006, 11:46

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`) )

ViPHP
ViPHP | 2291 Messages

09 août 2006, 11:48

Génia et Merci beaucoup :lol:
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.