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 de conversion de date en format francophone [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Par défaut Probleme de conversion de date en format francophone
    Voici mon code qui permet de remplir un formulaire et de le valider (emprunt de pc portable) ... Malheureusement au niveau de la récupération de la date d'emprunt que je récupére dans une table MYSQL ... Il m'indique un message d'erreur ...


    Voici la photo et le message d'erreur : Nom : form_spare.JPG
Affichages : 98
Taille : 28,5 Ko

    Voici mon code (en gras, ce qui concerne la récupération de la valeur que je désire convertir en format francophone pour affichage)

    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    <?php /* Date de création: 20/10/2006 */ ?>
    <html>
      <head>
      
      </head>
    <body>
    <?php
    //Connexion à la base
    $db=mysql_connect("localhost","root","");
    
    //Selection de la base
    mysql_select_db("alliance",$db);
    
    //Récuperation de l'id
    $id_v=$_GET['id_v'];
    
    $user = $_SESSION['USER_NOM'];
    
      //requête SQL:
      $sql_valid = "SELECT * FROM pr_spare WHERE idspare_pr='$id_v'";
    	    
      //exécution de la requête:
      $req_valid = mysql_query($sql_valid);
      
      //affichage des données:
      if($result=mysql_fetch_object($req_valid))
      {
      ?>
    <form name="validation" action="?numlien=valid" method="POST">
      <input type="hidden" name="id_v" value="<?php echo($id_v);?>">
      	 <table border="0" align="center" cellspacing="2" cellpadding="2">
        <tr align="left">
          <td>Nom du Spare</td>
          <td><INPUT TYPE="text" name="zo_nomspare" onfocus = "document.forms.emprunt_pp.zo_nomspare.blur()" value="<?php echo($result->nomspare);?>"></td>
        </tr>
        <tr align="left">
          <td>Modele du Portable</td>
          <td><INPUT TYPE="text" name="zo_modele" onfocus = "document.forms.emprunt_pp.zo_modele.blur()" value="<?php echo($result->model);?>"></td>
        </tr>
        <tr align="left">
          <td>Nom de l'emprunteur</td>
          <td><INPUT TYPE="text" name="zo_emprunteur" value="<?php echo($result->emprunteur);?>"></td>
        </tr>
    	<tr align="left">
          <td>Num Actima</td>
          <td><INPUT TYPE="text" name="zo_actima" value="<?php echo($result->num_actima);?>"></td>
        </tr>
    	<tr align="left">
          <td>Technicien Bureautique</td>
          <td><INPUT TYPE="text" name="zo_tech" value="<?php echo($user);?>"></td>
        </tr>
    	<table align="center">
    	--------------------------------------------------
    	</table>
    	<table border="0" align="center" cellspacing="2" cellpadding="2">
        <tr align="center">
          <td>Date d'emprunt</td> 
    	
    	 <td>  
    	 <?
    	  $requet="SELECT Datej_pr FROM pr_spare WHERE idspare_pr='$id_v'";
    
    	  $exe_req=mysql_query($requet) or die ("erreur de BDD");
    	  
          @list($year,$month,$day) = explode("-",$exe_req);
    	  
    	  if($dat=mysql_fetch_object($exe_req))
    	  {
    	  ?><input type="text" name="zo_date" onfocus = "document.forms.rend_pp.zo_date.blur()" value="<?php echo ($exe_req="$day/$month/$year"); ?>">
    	  <?
    	  }
    	 ?>
    	 </td>	
        </tr>
    	<table border="0" align="center" cellspacing="2" cellpadding="2">
        <tr align="center">
          <td>Valider l'emprunt</td>
          <td><input type="checkbox" name="zo_checkempr" value="1"></td>
        </tr>
        <tr align="center">
          <td colspan="2"><input type="submit" value="Valider"></td>
        </tr>
      </table>
      </table>
    </form>
      <?php
      }//fin if 
      ?>
    </body>
    
    </html>

    Merci de m'aider !!!!! !!!!!

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 46
    Par défaut
    Bonjour (héoui..)

    alors je te conseillerai d'abord de faire un fichier Php pour stocker les fonctions
    par exemple pour t'éviter de retaper à chaque fois la connexion à la BDD, et peu etre tu auras besoin de réutiliser la conversion de date.

    un exemple de conversion:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $querymax= "SELECT Max(datemodif) AS maxdatemodif FROM contenu";
    $resultat = mysql_query($querymax) or die ("La requête a échoué");
    $maxdate = mysql_fetch_row($resultat);
    $maxdatemodif = convert_date($maxdate[0]);
    $maxdate est au format eng
    $maxdatemodif est au format fr
    convert_date() est une fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    //fonction de conversion de date format ang --> fr
    function convert_date($dateang){
      list($year, $month, $day) = explode("-", $dateang);
      $datefr = $day."/".$month."/".$year;
      return $datefr;
    }

  3. #3
    Membre éclairé Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Par défaut
    Je n'ai jamais utilisé de fonction auparavant ...

    Comment dois je faire appel a une fonction dans mon code ... include ?

    Merci en tout cas pour ta patience et ta compréhension.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 46
    Par défaut
    en fait y a beaucoup d'incohérances...
    - tu refais une requete SELECT Datej_pr FROM pr_spare alors que tu as déjà une requete SELECT * FROM pr_spare.
    Donc une seule requete suffit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $requet='SELECT * FROM pr_spare WHERE idspare_pr='.$_GET['id_v'];
    (si id_ est numérique dans la bd)
    pas besoin de passer par une variable intermédiaire $id_v
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $req_valid = mysql_query($requet);
    puis:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $resultat = mysql_fetch_array($req_valid);
    ensuite quand tu voudras afficher le résultat:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $resultat['nomspare']
    //ou
    $resultat['model']
    $resultat['num_actima']
    $resultat['Datej_pr']
    Exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <td><INPUT TYPE="text" name="zo_nomspare" onfocus = "document.forms.emprunt_pp.zo_nomspare.blur()" value="<?php $resultat['Datej_pr'];?>"></td>
    les fonctions j'y viens

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 46
    Par défaut
    Les fonctions donc (une bonne habitude à prendre)

    Au début de ton PHP:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require("common/fonctions.php");
    ici les fichier fonction est dans le répertoire "common"
    sinon à la racine ça donne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    require("fonctions.php");
    le fichier fonctions.php:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    //connection à la BDD
    function connexionBDD(){
      mysql_connect("localhost", "root", "")or die ("Impossible de se connecter");
    	mysql_select_db ("nomdb")or die ("Impossible d'accéder à la base de données");
    }
    //fonction de conversion de date format ang --> fr
    function convert_date($dateang){
      list($year, $month, $day) = explode("-", $dateang);
      $datefr = $day."/".$month."/".$year;
      return $datefr;
    }
    retour au fichier Php "principal":
    pour apeller une fonction, par exemple se connecter à la BDD:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    //connexion à la base de données
    connexionBDD();
    c'est tout... (cette fonction ne prend pas de parametre entre les () )
    l'autre si:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $maxdatemodif = convert_date($maxdate[0]);
    le parametre c'est $maxdate[0] (une date format eng)

  6. #6
    Membre éclairé Avatar de bilou95
    Inscrit en
    Septembre 2006
    Messages
    433
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 433
    Par défaut
    Voici le code qui fonctionne ...

    Je t'en remercie GRANDEMENT ... Effectivement j'ai du me prendre la tete a mettre trop de variable etc ... mais le code fonctionne ...

    La partie en gras GRACE a toi !!!

    Merci encore !!!!!!

    Tu es un BIG BOSSSSSSSSSSS

    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    <?php /* Date de création: 20/10/2006 */ ?>
    <html>
      <head>
      
      </head>
    <body>
    <?php
    //Connexion à la base
    $db=mysql_connect("localhost","root","");
    
    //Selection de la base
    mysql_select_db("alliance",$db);
    
    //appel fichier fonction.php
    require("fonctions.php");
    
    //Récuperation de l'id
    $id_v=$_GET['id_v'];
    
    $user = $_SESSION['USER_NOM'];
    
      //requête SQL:
      $sql_valid = "SELECT * FROM pr_spare WHERE idspare_pr='$id_v'";
    	    
      //exécution de la requête:
      $req_valid = mysql_query($sql_valid);
      
      //affichage des données:
      if($result=mysql_fetch_object($req_valid))
      {
      ?>
    <form name="validation" action="?numlien=valid" method="POST">
      <input type="hidden" name="id_v" value="<?php echo($id_v);?>">
      	 <table border="0" align="center" cellspacing="2" cellpadding="2">
        <tr align="left">
          <td>Nom du Spare</td>
          <td><INPUT TYPE="text" name="zo_nomspare" onfocus = "document.forms.emprunt_pp.zo_nomspare.blur()" value="<?php echo($result->nomspare);?>"></td>
        </tr>
        <tr align="left">
          <td>Modele du Portable</td>
          <td><INPUT TYPE="text" name="zo_modele" onfocus = "document.forms.emprunt_pp.zo_modele.blur()" value="<?php echo($result->model);?>"></td>
        </tr>
        <tr align="left">
          <td>Nom de l'emprunteur</td>
          <td><INPUT TYPE="text" name="zo_emprunteur" value="<?php echo($result->emprunteur);?>"></td>
        </tr>
    	<tr align="left">
          <td>Num Actima</td>
          <td><INPUT TYPE="text" name="zo_actima" value="<?php echo($result->num_actima);?>"></td>
        </tr>
    	<tr align="left">
          <td>Technicien Bureautique</td>
          <td><INPUT TYPE="text" name="zo_tech" value="<?php echo($user);?>"></td>
        </tr>
    	<table align="center">
    	--------------------------------------------------
    	</table>
    	<table border="0" align="center" cellspacing="2" cellpadding="2">
        <tr align="center">
          <td>Date d'emprunt</td> 
    	
    	 <td>  
    	 <?
    	 $requet= "SELECT Datej_pr FROM pr_spare WHERE idspare_pr='$id_v'";
    	 $exe_req = mysql_query($requet) or die ("La requête a échoué");
    	 $date_eng = mysql_fetch_row($exe_req);
    	 
        
    	  	  ?><input type="text" name="zo_date" onfocus = "document.forms.rend_pp.zo_date.blur()" value="<?php echo $date_french = convert_date($date_eng[0]); ?>">
    	 </td>	
        </tr>
    	<table border="0" align="center" cellspacing="2" cellpadding="2">
        <tr align="center">
          <td>Valider l'emprunt</td>
          <td><input type="checkbox" name="zo_checkempr" value="1"></td>
        </tr>
        <tr align="center">
          <td colspan="2"><input type="submit" value="Valider"></td>
        </tr>
      </table>
      </table>
    </form>
      <?php
      }//fin if 
      ?>
    </body>
    
    </html>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/02/2007, 21h34
  2. [Conception] Récupérer une date au format francophone
    Par HwRZxLc4 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 08/11/2006, 16h15
  3. [debutant]probleme de conversion de date
    Par julien31009 dans le forum Langage
    Réponses: 6
    Dernier message: 22/10/2006, 15h56
  4. [Dates] Conversion de date : anglophone vers francophone
    Par groupejtt dans le forum Langage
    Réponses: 4
    Dernier message: 17/10/2006, 11h54
  5. Probleme de conversion de dates
    Par manu00 dans le forum Langage
    Réponses: 4
    Dernier message: 29/05/2005, 00h00

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