Besoin d'aide date formulaire HTML/PHP/SQL

Fermé
snowflakedu59 Messages postés 90 Date d'inscription vendredi 28 mars 2008 Statut Membre Dernière intervention 14 mai 2010 - 27 mai 2008 à 08:54
GallyNet Messages postés 434 Date d'inscription mardi 1 juin 2004 Statut Membre Dernière intervention 15 décembre 2008 - 27 mai 2008 à 12:24
Bonjour,
j'ai fais un "historique des ventes" ... je vous laisse aller voir cela ira plus vite que de vous expliquer ...
cela fonctionnait avant que je prenne en compte la date .
mes codes :

formulaire :
<h1>Consulter l'historique des ventes par plat</h1>

<br>

<h2><form name="historique des ventes" method="post" action="index.php?page=traitementhistoriquedesventes">
Periode du <input name="DebutPeriode" value="JJ/MM/AAAA" size="10" type="text"> Au <input name="FinPeriode" value="JJ/MM/AAAA" size="10" type="text"></h2>
<br>
<br>
<h2><input value="Envoyer" type="submit"></h2>
</form>

traitement:
<?php
// Connexion au serveur MySQL et ouverture de la base vpc
$db=mysql_connect("sql.free.fr","del.resto","**********") or die(" erreur de connexion".mysql_error());
mysql_select_db("del_resto",$db) or die(" erreur de connexion à la base Delresto");

// Requête d'affichage des enregistrements de la table CLIENT
$sql = "SELECT plat_nom, COUNT( commande_id ) AS 'nb de commandes', SUM( ligne_commande_qte ) AS 'quantité commandée'
FROM plat, carte, ligne_commande, commande
WHERE plat.plat_id = carte.plat_id
AND carte.carte_id = ligne_commande.carte_id
AND ligne_commande.commande_id = commande.commande_id
AND commande_date BETWEEN '" . $_POST['DebutPeriode'] . "' AND '" . $_POST['FinPeriode'] . "'
GROUP BY plat_nom";
// ***************************************************

// Exécution de la requête
$requete = mysql_query($sql) or die ("erreur requete sql !");

// Affichage des résultats de la requête
?>



je pense que c'est une incompatibilité entre les données envoyées et la date contenue dans la BDD
commande_date est au format Datetime

Merci
A voir également:

2 réponses

GallyNet Messages postés 434 Date d'inscription mardi 1 juin 2004 Statut Membre Dernière intervention 15 décembre 2008 386
27 mai 2008 à 08:59
C'est même sûr que cela vient d'une incompatibilité entre données fournit et base de données. Tu demande à ce que les dates soit écrite de la forme JJ/MM/AAAA alors qu'en MySQL les dates sont enregistré sous le format AAAA-MM-JJ.
Les datetime ont l'heure en plus, mais cela ne gêne pas de ne pas les mettre lors d'une recherche.

Il te faut donc passer par une conversion de format entre les date que tu reçoit et celle que tu doit mettre dans ta requêtes. J'ai pas de fonction sous la main, mais il y a des exemples sur le net.
0
snowflakedu59 Messages postés 90 Date d'inscription vendredi 28 mars 2008 Statut Membre Dernière intervention 14 mai 2010 5
27 mai 2008 à 09:03
si dans le fomulaire je demande la date en YYYY-MM-JJ cela irai ?
0
GallyNet Messages postés 434 Date d'inscription mardi 1 juin 2004 Statut Membre Dernière intervention 15 décembre 2008 386
27 mai 2008 à 12:24
Si l'utilisateur rentre directement la date au bon format, alors il n'y aura pas de problème. Apres, c'est juste une question de savoir ce qui est le plus pratique pour l'utilisateur.
0