Mise à jour d'une date dans une BDD

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Mise à jour d'une date dans une BDD

par daftbot » 14 oct. 2007, 20:26

Même sans les quotes rien ne bouge dans ma base !

EDIT : Voila mon code marche, la date se met a jour voici le code :
$sql="UPDATE inscrit  SET  date_maj=now()";
mysql_db_query($dbname,$sql,$id_link);
Mais comme prévu la date se met a jour pour tous les membres, alors ou mettre la condition afin que cela ne se produise pas ?

EDIT 2 : C'est bon problème résolu
$sql="UPDATE inscrit  SET  date_maj=now() WHERE pseudo='$pseudo' and mdp='$mdp'";
mysql_db_query($dbname,$sql,$id_link);

par momox » 14 oct. 2007, 20:07

now() est une fonction de interne a mysql et ne doit pas être placée entre quotes ;)

par daftbot » 14 oct. 2007, 20:03

Je suis désolé de revenir à la charge mais impossible de faire bouger quelque chose dans la base donnée :
<?
/*Vérification si les champs on bien été rempli*/
if(empty($mdp) || empty($pseudo) ) {
include "connexion.php";
exit;
}
/*CONNEXION A LA BASE DE DONNEE*/
include "commun/connexion.inc.php";
/*VERIFICATION DU LOGIN*/
$sql="SELECT clef FROM inscrit WHERE pseudo='$pseudo' and mdp='$mdp'";
$resultat=@mysql_db_query($dbname,$sql,$id_link);
$nombre=mysql_num_rows ($resultat);
if ($nombre <1) {
$auth=0;
include "connexion.php";
exit;
}
/*RENTRE LA DATE DE CONNEXION DANS LA TABLE*/
$sql="UPDATE clef FROM inscrit WHERE pseudo='$pseudo' and mdp='$mdp' SET date_maj='now()'"
?>
Voila mon code entier en ce qui concerne l'identification d'un membre, mais la dernière n'a aucun effet sur la BDD !!!

par Tracker » 14 oct. 2007, 17:33

Merci de ta réponse, effectivement je n'y avait pas pensé, ca serait balo que ca change la date pour tout le monde. Mais maintenant le now() il faut que je le détermine ? et que dois je mettre dans ma base de donnée ?
now() c'est une fonction mysql qui retourne le datetime courant, si tu veux plus d'info:

Code : Tout sélectionner

google > mysql now
a+

par daftbot » 14 oct. 2007, 15:52

Merci de ta réponse, effectivement je n'y avait pas pensé, ca serait balo que ca change la date pour tout le monde. Mais maintenant le now() il faut que je le détermine ? et que dois je mettre dans ma base de donnée ?

Re: Mise à jour d'une date dans une BDD

par Tracker » 14 oct. 2007, 15:08

Bonjour, j'ai un problème avec l'authentification d'une personne sur mon site, en faite quand une personne se connecte sur le site j'aimerais que dans la base de donnée la date à laquelle la personne ce connecte vienne ecraser la date qui est deja inscrite.
$sql="UPDATE inscrit SET date_maj='TIMESTAMP'"
Voila le code que j'ai, mais la date ne se remplace pas, et pourtant le navigateur ne me renvoi aucune erreur.

Je ne sais pas de quel type doit être la colonne dans ma base de donnée, je l'ai mise en TIMESTAMP.

Quelqu'un aurait il une solution à me proposer. Merci d'avance.
'TIMESTAMP', c'est une chaine de caractère, pour une date c'est pas terrible... :wink:
$sql="UPDATE inscrit SET date_maj = now()"

Par contre tu es certain qu'il ne manque pas un clause where dans ton ordre genre, where userid = ???
Sinon tu vas modifier la date pour tous les inscrits.

Tracker.

Mise à jour d'une date dans une BDD

par daftbot » 14 oct. 2007, 14:41

Bonjour, j'ai un problème avec l'authentification d'une personne sur mon site, en faite quand une personne se connecte sur le site j'aimerais que dans la base de donnée la date à laquelle la personne ce connecte vienne ecraser la date qui est deja inscrite.
$sql="UPDATE inscrit SET date_maj='TIMESTAMP'"
Voila le code que j'ai, mais la date ne se remplace pas, et pourtant le navigateur ne me renvoi aucune erreur.

Je ne sais pas de quel type doit être la colonne dans ma base de donnée, je l'ai mise en TIMESTAMP.

Quelqu'un aurait il une solution à me proposer. Merci d'avance.