Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : pb recup année sur base sql [ Base de données / MySQL ] (stefdu81)

mardi 16 septembre 2008 à 08:50:23 | pb recup année sur base sql

stefdu81

Bonjour,

Je suis débutant ...et je cherche à récupérer dans ma base tout ce qu'il y a dans l'année choisie avec une liste déroulante.
Merci de votre aide.

stef


mardi 16 septembre 2008 à 09:34:17 | Re : pb recup année sur base sql

TheGorgo

salut

tu peux me donner un peux plus de details stp ? genre ce qu'il y a dans ta base et comment elle se compose.

mardi 16 septembre 2008 à 09:56:47 | Re : pb recup année sur base sql

stefdu81

Détail de la base sql :
-- Base de données: `toto`

CREATE TABLE `naissance` (
  `id` mediumint(9) NOT NULL auto_increment,
  `prenom` text NOT NULL,
  `sexe` text NOT NULL,
  `idate` date NOT NULL,
  `pere` text NOT NULL,
  `mere` text NOT NULL,
  `adresse` text NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=12 ;
--
-- Contenu de la table `naissance`
--
INSERT INTO `naissance` (`id`, `prenom`, `sexe`, `idate`, `pere`, `mere`, `adresse`) VALUES
(1, 'Maëlys', 'F', '2007-03-09', 'Laurent ', 'Elisabeth ', 'Puech '),
(2, 'Lola', 'F', '2008-06-01', 'David', 'Sophie', 'Rudelle'),
(3, 'Nathan', 'G', '2009-08-23', 'Alexandre', 'Elisabeth', 'lotissement'),

Et comment faire pour récupérer que les valeurs exemple de l'année 2008
<form action="naissance.php" method="post">
<label>Année : </label>
  <select name="annee">
    <option value="2006">2006</option>
    <option value="2007">2007</option>
    <option value="2008">2008</option>
  </select><br />
</form>

Merci

stef


mardi 16 septembre 2008 à 10:54:01 | Re : pb recup année sur base sql

TheGorgo

ok

alors la solution la plus simple (d'apres moi) est de convertir tes dates en timestamp.

il te faut egalement un bouton pour valider le formulaire :
<input type="submit" value="Chercher" name="btChercher" />

et enfin il te faut le code permettant d'executer la requete sur la table :
if(isset($_POST['btChercher']) && $_POST['btChercher'] == "Chercher") // si le bouton "Chercher" a été pressé.
{
      $dateDeb = mktime(0, 0, 0, 1, 1, $_POST['annee']); // Timestamp 1er Janvier de l'année selectionnée
      $dateFin = mktime(0, 0, 0, 12, 31, $_POST['annee']); // Timestamp 31 Décembre année semectionnée

      mysql_connect($host, $user, $pass); // Connexion a la bdd
      mysql_select_db("toto"); // Selection de la base

      $Qr = "SELECT * FROM naissance WHERE UNIX_TIMESTAMP(idate) >= ".$dateDeb." AND UNIX_TIMESTAMP(idate) <= ".$dateFin;
      $Rs = mysql_query($Qr);
}

affichage des données :
while($resultat = mysql_fetch_assoc($Rs))
{
      echo $resultat['prenom']."<br />";
}

mardi 16 septembre 2008 à 11:29:13 | Re : pb recup année sur base sql

stefdu81

Merci beaucoup pour l'aide, mais il me renvoie toujours une erreur
Etat-civil"mysql_fetch_assoc(): supplied argument is not a valid MySQL " je doit avoir fait une erreur quelque part. je t'envoie le code entier php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <title>Etat-civil</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>

    <body>
 <strong>Etat civil</strong>
 <br />
<form action="naissance.php" method="post">
<label>Année : </label>
  <select name="annee">
    <option value="2006">2006</option>
    <option value="2007">2007</option>
    <option value="2008">2008</option>
  </select><br />
</form>

<input type="submit" value="Chercher" name="btChercher" />
<hr>

<?php
if(isset($_POST['btChercher']) && $_POST['btChercher'] == "Chercher") // si le bouton "Chercher" a été pressé.
{
      $dateDeb = mktime(0, 0, 0, 1, 1, $_POST['annee']); // Timestamp 1er Janvier de l'année selectionnée
      $dateFin = mktime(0, 0, 0, 12, 31, $_POST['annee']); // Timestamp 31 Décembre année selectionnée

      mysql_connect("localhost", "root", ""); // Connexion a la bdd
      mysql_select_db("toto"); // Selection de la base

      $Qr = "SELECT * FROM naissance WHERE UNIX_TIMESTAMP(idate) >= ".$dateDeb." AND UNIX_TIMESTAMP(idate) <= ".$dateFin;
      $Rs = mysql_query($Qr);
}

while($resultat = mysql_fetch_assoc($Rs))

{
      echo $resultat['prenom']."<br />";
}
?>
 
    </body>
</html>

Merci encore theGorgo
stef

mardi 16 septembre 2008 à 12:46:34 | Re : pb recup année sur base sql

TheGorgo

remplace $Rs = mysql_query($Qr);
par $Rs = mysql_query($Qr) or die(mysql_error());

mardi 16 septembre 2008 à 13:11:52 | Re : pb recup année sur base sql

stefdu81

Merci mais toujours la même erreur de renvoyer.
Est ce qu'il n y aurait pas un pb dans le format de la date ? puisque idate est ex:"2007-03-09" et annee "2007"
stef

mardi 16 septembre 2008 à 13:21:00 | Re : pb recup année sur base sql

TheGorgo

pardon c juste kil faut faire un test l'erreur kil te renvoie c'est parce que la variable $resultat n'est pas in itialisée. Elle s'initialise que quand tu click sur le bouton.

if(isset($_POST['btChercher']) && $_POST['btChercher'] == "Chercher") // si le bouton "Chercher" a été pressé.
{
      while($resultat = mysql_fetch_assoc($Rs))
      {
            echo $resultat['prenom']."<br />";
      }
}

et pour ta question la reponse est non, UNIX_TIMESTAMP est une fonction mysql qui transforme une date au format AAAA-MM-JJ en timestamp unix (nombre de secondes depuis le 1er janvier 1970) pareil pour la fonction mktime().


mardi 16 septembre 2008 à 13:51:41 | Re : pb recup année sur base sql

stefdu81

merci, je crois que je suis trop nul j'ai beau clické toujours pareil
je cherche...

mardi 16 septembre 2008 à 13:59:03 | Re : pb recup année sur base sql

TheGorgo

lol je viens de voir l'erreur

<form action="naissance.php" method="post">
<label>Année : </label>
  <select name="annee">
    <option value="2006">2006</option>
    <option value="2007">2007</option>
    <option value="2008">2008</option>
  </select><br />
</form>

<input type="submit" value="Chercher" name="btChercher" />
<hr>

il faut ke le bouton submit soit dans le formulaire

<form action="naissance.php" method="post">
<label>Année : </label>
  <select name="annee">
    <option value="2006">2006</option>
    <option value="2007">2007</option>
    <option value="2008">2008</option>
  </select><br />
<input type="submit" value="Chercher" name="btChercher" />

</form>

<hr>
là je pense que c'est bon


1 2

Cette discussion est classé dans : pb, base, sql, recup, année


Répondre à ce message

Sujets en rapport avec ce message

pb de requete sql [ par wahid1 ] bonjour ,j'ai un pb avec ma requete sql;dan sma base on  adeclaré un datetim edonc j'ai dans le meme attribut la date et l'heure . qd j efais mes requ au sujet du SQL [ par idiramazigh ] bonjour à tous;à la fac,je suis des cours de base de données et on trvaille sur une base de donnée propre au prof,Y aurait il un moyen de me connecter requete sql avec php : j'ai un pb avec les apostrophes [ par nicoto ] Bonjour,J'aurai besoin d'aide car j'utilise actuellement php , et j'accède à une base sql avec driver odbc. mon problème est lors d'envoie de requete Suppression données table / SQL [ par zgrominet ] Bonjour,Quelquun peux mexpliquer pk je n'arrive pas à supprimer un enregistrement dans ma base de données SQL ??J'ai un message du forum que j voudrai Linux pb : Serveur Apache - Fonction PHP de base, Manquante ! [ par valva ] Voila je vien d'insaller la Mandrake 10.2 (Cooker) avec Apache2 la version de php est la v4.3.10. quand je met des scripts php, des fonctions de base Linux pb : Serveur Apache (Fontion PHP de base, Inexistante) [ par valva ] Voila je vien d'insaller la Mandrake 10.2 (Cooker) avec Apache2 la version de php est la v4.3.10. quand je met des scripts php, des fonctions de base pb avec frame et php base de donnée?? [ par the_youpi ] Bonjour,quelqu'un pourrait m'aider à résoudre mon pb:donc voilà: je suis en présence d'une page d'accueil qui contien 3 frames.lorsque je clique sur u Fonctionne pas sous internet explorer [ par Vin Gazoil ] Salut à tous! en fait mon code fonctione trés bien sous Mozilla, ce qui n'est pas le cas sous internet Explorer. Mon problème est sur l'affichage de m pb affichage de la base [ par neotetsuo34 ] bonjour, j'ai un pb quand j'affiche certaines données de ma base car si par exemple je marque "bonjour a tous" quand je recupere ma fiche pour la modi copier une base local vers serveur [ par aze555666 ] sltvoila mon Nieme pb: j'ai fait une base de données en local, et je voudrais continuer de la remplir en local. je suis hébergé chez multimania, et je


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version


LG KP501

Entre 9€ et 159€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,296 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.