recupération d'une heure dans base de données

Mammouth du PHP | 19672 Messages

10 juin 2005, 10:21

nettement: des dates et des heures en type TEXT : intéressant. Tu connais les types DATE et TIME ?
TU enregistres ces éléments selon quel format ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 90 Messages

10 juin 2005, 10:24

ouais bah laissez tombé je cale rien je comprend rien camenerve

merci quand meme

Mammouth du PHP | 19672 Messages

10 juin 2005, 10:27

Ben on peut t'aider, mais il va falloir un peu de patiente parce qu'au départ, il faudrait modifier les types pour ces champs et ensuite voir comment travailler avec.

Enfin comme tu veux. Mais essaye d'apprendre un peu les règles de base sur la conception de bases de données et le SQL, ça va drôlement te faciliter la vie.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

10 juin 2005, 10:27

c'est incroyable le nombre de gens qui laissent tomber :cry:

pourtant tu as toutes les infos dans ce post,je t'ai dit que tu avais déjà la requête sous la main tu as vu mon post ?

car même si tes données sont dans un format pas tjrs très judicieux comme l'a dit Cyrano, tu devrais pouvoir les récupérer qand même

tu n'as as à compliquer ton code mais à le simplifier ! ;)

Eléphant du PHP | 90 Messages

10 juin 2005, 10:30

Dans un permier temps j'ai modifié les types heure et date de ma base ( entre nous je ne vois pas ce que ca change :) )

Et si j'enleve ma premiere requete ca n'aura plus de sens a moins que l'on parle pas de la meme requete...
mais moi alors celle qu'il faut que j'enleve.

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

10 juin 2005, 10:38

ça aura du sens quand tu voudras faire des calculs par exemple, là tu seras heureux d'aoir un type date

je ne sais pas si tu lis vraiment ce qui a été écrit :
pjl et moi t'avons dit que ce que tu faisais était redondant

- dans ta première requête tu regardes si tu as l'ip de la personne dans ta table
- dans la deuxième requête tu regardes l'heure qui correspond à cette ip si tu l'as trouvée

et nous te proposons simplement d'effectuer directement la deuxième requête et de voir le résultat :
--> il y en a un alors tu affiches l'heure et tu dis "vous avez déjà répondu"
--> il n'y en a pas alors tu fais ton insertion de réponse

Mammouth du PHP | 19672 Messages

10 juin 2005, 10:40

Dans un permier temps j'ai modifié les types heure et date de ma base ( entre nous je ne vois pas ce que ca change :) )
Ça change que ça ne gonfle pas inutilement la taille de ta base de données : un champ DATE ou TIME prend notablement moins de place qu'un champ TEXT.

Ceci dit, effectivement, revenons à ta requête: si tu veux récupérer l'heure, ça se fait dans un SELECT tout ce qu'il y a de plus ordinaire:

Code : Tout sélectionner

$sql = "SELECT heure_reponse FROM reponses WHERE Id = ". $id;
Où est-ce que ça bloque ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
pjl
ViPHP | 2119 Messages

10 juin 2005, 10:40

Dans un permier temps j'ai modifié les types heure et date de ma base ( entre nous je ne vois pas ce que ca change :) )
Je compte faire de même. Je vais remplacer ma Festina par un carnet sur lequel je vais marquer les heures, minutes et secondes. Ainsi, en tournant les pages du carnet, j'aurais toujours l'heure sur moi. :lol: :lol:

Mammouth du PHP | 1776 Messages

10 juin 2005, 10:44

Dans un permier temps j'ai modifié les types heure et date de ma base ( entre nous je ne vois pas ce que ca change :) )
Ba ca change que d'un côté tu as un champ preformaté pour du texte générale et de l'autre côté pour la mise en forme de date ce qui simplifie les requêtes avec des options SQL supplémentaires...(triage par exemple...)
Et si j'enleve ma premiere requete ca n'aura plus de sens a moins que l'on parle pas de la meme requete...
mais moi alors celle qu'il faut que j'enleve.
deja je ne comprends pas super bien le sens de ton code, ca me parait etre un trajet paris - Lyon en passant par New-York... :roll:

Eléphant du PHP | 90 Messages

10 juin 2005, 10:53

ouais bah J'y px rien si je fais du php que depuis 2 semaines
Ca peut se comprendre que j'ai legerement un peu de mal..

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

10 juin 2005, 10:59

on ne te reproche pas d'avoir des difficultés et on essaye justement de t'aider !!

ce que je te reprocherais moi c'est que je t'ai dit 3 fois ce que tu pouvais faire, une fois comment tu pouvais repérer des erreurs SQL et qu'en face il n'y a rien, tu n'essais pas et tu ne nous dit pas plus ce qui ne va pas

on te donne des suggestions tu ne réagis pas

c'est ça le reproche, après tu pex avoir tout le mal que tu veux tout le monde a débuté un jour et personne ne te reprochera rien

Mammouth du PHP | 1776 Messages

10 juin 2005, 11:07

y'a aussi la solution de commencer par apprendre les bases... :? :roll:
:wink:

Enjoy !

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

10 juin 2005, 11:08

bah là ça va c'est pas bien compliqué Pasti$ a mis son champ en time et voilà ça peut rouler :)

y'a plus qu'à essayer ensemble de résoudre ces problèmes

Eléphant du PHP | 90 Messages

10 juin 2005, 11:09

Bon un point positif j'arrive a recuperer mon heure ( jai essayé avec deux IP differents av deux heures differentes ) et il me sort l'heure de reponse exactement de la machine ( j'ai regardé dans ma table si ca correspondait ) j'ai modifié ma premiere requete
$var="$ip"; 												//on mets l'adresse IP dans une variable
								$veri= "faux"; 												//on mets une variable a FAUX
								$rq = "SELECT DISTINCT ip_repondant,heure_reponse FROM reponses WHERE ip_repondant='$ip'"; 		//ensuite on parcourt le champs ip_repondant de la table REPONSES
								$result = mysql_query($rq);

pui supprimé ma deuxieme requete..

En revanche, dans mon champ 'date' il me mets 2010-06-20 . Comment on fait pour mettre a jour la date ?


En tout cas je vous remercie tous de m'avoir et aidé (et à m'avoir supporté !! lol)

Mammouth du PHP | 19672 Messages

10 juin 2005, 11:11

Pour une mise à jour, tu fais une requête de ce type:

Code : Tout sélectionner

UPDATE reponses SET date_reponse = '". $nouvelle_date .' WHERE Ip_repondant = '". $ip ."'
Par exemple.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: