IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Probleme script concernant vérification de dates


Sujet :

PHP & Base de données

  1. #1
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut Probleme script concernant vérification de dates
    Me revoila ...

    En fait le code ne veut pas marcher comme je le désire.
    Je vous explique ...
    Pour le moment le script met a jour correctement mon champs si création, il incrémente le champs 'nbre fois' dés qu'une nouvelle connexion a eu lieu du meme utilisateur ... mais ne crée aucunement un nouvel enregistrement.

    Ce que je voudrai c'est ... si la valeur du champs "date" est différente de la valeur de la variable $dat (Date d'aujourd'hui), alors il crée un nouveau champ avec la date du jour.

    Voyez vous ?????

    Thks

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    <?php
    //Connexion à la base de données
    $db = mysql_connect($cnxhost, $cnxuser, $cnxpass) or die ("Erreur de connexion");
     
    $sql = $_SESSION['USER_NOM'];
     
    $ip = $_SERVER['REMOTE_ADDR'];
    $dat = date("y/m/d");
    $date = date("y/m/d G.i:s", time());
    $nb_connectes = $sql;
    $recupip = $ip;
    $recupdate = $date;
     
    $sql1 = "SELECT * FROM connectes WHERE user_nom='$sql'";	
    $query = mysql_query($sql1) or die(mysql_error());
     
    $sql4 = "SELECT Date FROM connectes";
    $query1 = mysql_query($sql4) or die(mysql_error());
     
    if (mysql_num_rows($query) == " " && mysql_num_rows($query1) != $dat)
    {
    			   //création d'une nouvelle entité dans la table connectes
     
    				   $sql2 = "INSERT INTO connectes (user_nom,DateConnect,Date,nbre_fois,Ip) VALUES ('$nb_connectes','$recupdate','$dat',nbre_fois+1,'$recupip')";
    				   $query = mysql_query($sql2) or die(mysql_error()); 
    }				   
    else 	  		   
    {   
    				   $sql3 = "UPDATE connectes SET user_nom='$nb_connectes',DateConnect='$date',nbre_fois=nbre_fois+1 WHERE user_nom='$sql'";
    	 			   $query = mysql_query($sql3) or die(mysql_error());  	 	 	  
    }  
     
    mysql_close($db);
    ?>

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Points : 936
    Points
    936
    Par défaut
    en fait j'ai un peu peur de ton code
    ya des test que tu fais et j'avoue que j'ai du mal a comprendre

    if (mysql_num_rows($query) == " " && mysql_num_rows($query1) != $dat)
    saches que mysql_num_rows retourne un entier. en fonction de ça corrige ton code et on verra par la suite
    Les hommes naissent et demeurent libres et egaux en dignité et en droit. Les distinctions sociales ne peuvent etre fondées que sur l'utilité commune. Article 1 droits et de l'homme et du citoyen. 1789

  3. #3
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Pourtant cela marche ... ??????

    J'ai ce que je désire à 75% ... Tout le monde est surpris de voir cela

    if (mysql_num_rows($query) == " " ...........

    ??????

    Pour toi le mieux c cela :

    if ($query == 0 && $query1 != $dat)

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Points : 936
    Points
    936
    Par défaut
    donc si je comprend bien c'est ta partie insert qui ne marche pas?
    que veux tu verifier lorsque tu fais ceci:
    if (mysql_num_rows($query) == " " && mysql_num_rows($query1) != $dat)
    Les hommes naissent et demeurent libres et egaux en dignité et en droit. Les distinctions sociales ne peuvent etre fondées que sur l'utilité commune. Article 1 droits et de l'homme et du citoyen. 1789

  5. #5
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    ce que je voudrais vérifier ... c'est dés qu'aucun enregistrement ou que la valeur du champ 'Date' est différente de la date du jour ($dat = date("y/m/d") ... qu'il fasse un INSERT ...

    Sinon faire une mise a jour dans le cas ou l'enregistrement est présent et la date identique a la date du jour ...

    Comprends tu ?

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Points : 936
    Points
    936
    Par défaut
    dans ce cas fais ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $sql4 = "SELECT Date FROM connectes";
    $query1 = mysql_query($sql4) or die(mysql_error());
    $nbelement=mysql_num_rows($query) ;
    if ($nbelement!=0){
          $madate=mysql_fetch_array($query1);//au cas ou ta requete renvoie qu'1 element
    }
    if ((mysql_num_rows($query) ==0) || (madate != $dat))
    {
      blabla.........
    juste une approximation
    Les hommes naissent et demeurent libres et egaux en dignité et en droit. Les distinctions sociales ne peuvent etre fondées que sur l'utilité commune. Article 1 droits et de l'homme et du citoyen. 1789

  7. #7
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Ok je vais essayer ...

    Je te réponds demain ... Je quitte le taff ...

    Bonne soirée A demain

  8. #8
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    J'ai trouvé ...

    Voici le code que je désirai !!!! Je suis content en partie grace a toi !!!!!

    Je te remercie.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    <?php
    //Connexion à la base de données
    $db = mysql_connect($cnxhost, $cnxuser, $cnxpass) or die ("Erreur de connexion");
     
    $sql = $_SESSION['USER_NOM'];
     
    $ip = $_SERVER['REMOTE_ADDR'];
    $dat = date("y/m/d");
    $date = date("y/m/d G.i:s", time());
    $nb_connectes = $sql;
    $recupip = $ip;
    $recupdate = $date;
     
    $sql1 = "SELECT * FROM connectes WHERE user_nom='$sql'";	
    $query = mysql_query($sql1) or die(mysql_error());
     
    $sql4 = "SELECT Date FROM connectes WHERE Date!='$dat'";
    $query1 = mysql_query($sql4) or die(mysql_error());
     
    if ((mysql_num_rows($query) == " ") || (mysql_num_rows($query1)))
    {
    			   //création d'une nouvelle entité dans la table connectes
     
    				   $sql2 = "INSERT INTO connectes (user_nom,DateConnect,Date,nbre_fois,Ip) VALUES ('$nb_connectes','$recupdate','$dat',nbre_fois+1,'$recupip')";
    				   $query = mysql_query($sql2) or die(mysql_error()); 
    }				   
    else 	  		   
    {   
    				   $sql3 = "UPDATE connectes SET user_nom='$nb_connectes',DateConnect='$date',nbre_fois=nbre_fois+1 WHERE user_nom='$sql'";
    	 			   $query = mysql_query($sql3) or die(mysql_error());  	 	 	  
    }  
     
    mysql_close($db);
    ?>

  9. #9
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Points : 936
    Points
    936
    Par défaut
    n'oublie pas de mettre
    Les hommes naissent et demeurent libres et egaux en dignité et en droit. Les distinctions sociales ne peuvent etre fondées que sur l'utilité commune. Article 1 droits et de l'homme et du citoyen. 1789

  10. #10
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    Re-Salut,

    Petite indication ... ca marche mieux je dirai mais une petite question ...

    Est il possible de revenir en début de table ?

  11. #11
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Points : 936
    Points
    936
    Par défaut
    Citation Envoyé par bilou95
    Re-Salut,

    Petite indication ... ca marche mieux je dirai mais une petite question ...

    Est il possible de revenir en début de table ?
    certainement!!
    en le faisant explicitement
    Les hommes naissent et demeurent libres et egaux en dignité et en droit. Les distinctions sociales ne peuvent etre fondées que sur l'utilité commune. Article 1 droits et de l'homme et du citoyen. 1789

  12. #12
    Membre régulier Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Points : 117
    Points
    117
    Par défaut
    ?????? je comprends pas ...

    Y a t'il une fonction ?

  13. #13
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Points : 936
    Points
    936
    Par défaut
    Citation Envoyé par bilou95
    ?????? je comprends pas ...

    Y a t'il une fonction ?
    Citation Envoyé par cours mysql
    mysql_data_seek
    Déplace le pointeur interne de résultat
    int mysql_data_seek (resource result_identifier, int row_number)
    mysql_data_seek() retourne TRUE en cas de succès et FALSE sinon.
    mysql_data_seek() déplace le pointeur interne de résultat, dans le résultat associé à l'identifiant de résultat result_identifier. Il le fait pointer à la ligne row_number. Le prochain appel à mysql_fetch_row() retournera cette ligne.
    row_number commence à 0.
    Les hommes naissent et demeurent libres et egaux en dignité et en droit. Les distinctions sociales ne peuvent etre fondées que sur l'utilité commune. Article 1 droits et de l'homme et du citoyen. 1789

Discussions similaires

  1. petit probleme script heure et date
    Par ion dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 08/12/2005, 21h47
  2. Problème script Bash
    Par Sphost dans le forum Linux
    Réponses: 10
    Dernier message: 26/07/2005, 10h56
  3. script de vérification
    Par break_71 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 08/06/2005, 18h24
  4. Problème pour afficher un format date dd/MM/yy HH:mm
    Par indy3 dans le forum Hibernate
    Réponses: 5
    Dernier message: 29/03/2005, 11h45
  5. Réponses: 2
    Dernier message: 22/07/2004, 01h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo