PHP/SQL SELECT date sur multitable
Fermé
maverickz
Messages postés
49
Date d'inscription
lundi 12 octobre 2009
Statut
Membre
Dernière intervention
10 août 2011
-
13 nov. 2009 à 13:57
maverickz Messages postés 49 Date d'inscription lundi 12 octobre 2009 Statut Membre Dernière intervention 10 août 2011 - 14 nov. 2009 à 16:24
maverickz Messages postés 49 Date d'inscription lundi 12 octobre 2009 Statut Membre Dernière intervention 10 août 2011 - 14 nov. 2009 à 16:24
A voir également:
- PHP/SQL SELECT date sur multitable
- Easy php - Télécharger - Divers Web & Internet
- Jm date désabonnement ✓ - Forum Consommation & Internet
- Sql lister les tables ✓ - Forum Programmation
- Retour a la ligne php ✓ - Forum PHP
4 réponses
Archeus01
Messages postés
1571
Date d'inscription
mercredi 3 octobre 2007
Statut
Membre
Dernière intervention
9 juin 2022
450
13 nov. 2009 à 15:15
13 nov. 2009 à 15:15
Bonjour, j'ai lu la fin en fast...
Pour comparer des chaines, utilise like :
$result=mysql_query("SELECT shipDate FROM date WHERE shipDate like $shipDate")
Pour comparer des chaines, utilise like :
$result=mysql_query("SELECT shipDate FROM date WHERE shipDate like $shipDate")
maverickz
Messages postés
49
Date d'inscription
lundi 12 octobre 2009
Statut
Membre
Dernière intervention
10 août 2011
18
13 nov. 2009 à 16:01
13 nov. 2009 à 16:01
Hello,
Merci pour ta réponse, malheureusement il ne m'affiche rien dans l'écho , assez spécial d'ailleurs.
J'ai changé le type du champ shipDate de VARCHAR dans la table en mode DATE, soit.
La fonction de test pour voir si il trouve bien un date ressemble à ceci :
--------------------------------------------------------------------------------------
on récupère le résultat sur une page PHP et on tente de l'afficher :
------------------------------------------------------------------------------
et la NADA :-/
J'ai essayé avec le LIKE , pareil
Pourtant dans ma DB dans, sans fautes de frappes, la table "orders" contient un champ "shipDate" en mode "DATE" qui lui a comme contenu "2009-11-13".
Si quelqu'un comprends qu'il me fasse signe ^^
Merci
Merci pour ta réponse, malheureusement il ne m'affiche rien dans l'écho , assez spécial d'ailleurs.
J'ai changé le type du champ shipDate de VARCHAR dans la table en mode DATE, soit.
La fonction de test pour voir si il trouve bien un date ressemble à ceci :
--------------------------------------------------------------------------------------
function datetest($shipDate) { echo $shipDate; // ShipDate est de type FR 13/11/2009 $date=$shipDate; $shipDate=dateus($date); // On convertit en US : 2009-11-13 echo $shipDate; // On teste, c'est parfait $connect=MySQLConnect(); // Connexion DB $request=mysql_query("SELECT shipDate FROM orders WHERE shipDate = $shipDate"); $result=mysql_fetch_array($request); mysql_close($connect); return $result; }
on récupère le résultat sur une page PHP et on tente de l'afficher :
------------------------------------------------------------------------------
$date=datetest($shipDate); echo $date; print_r($date);
et la NADA :-/
J'ai essayé avec le LIKE , pareil
Pourtant dans ma DB dans, sans fautes de frappes, la table "orders" contient un champ "shipDate" en mode "DATE" qui lui a comme contenu "2009-11-13".
Si quelqu'un comprends qu'il me fasse signe ^^
Merci
Archeus01
Messages postés
1571
Date d'inscription
mercredi 3 octobre 2007
Statut
Membre
Dernière intervention
9 juin 2022
450
13 nov. 2009 à 17:21
13 nov. 2009 à 17:21
Remplace le $request par SELECT shipDate FROM date et envoie ici le résultat du printr (coupe si y'en a une dizaine deux suffisent). J'en ai besoin pour t'aider un peu plus
maverickz
Messages postés
49
Date d'inscription
lundi 12 octobre 2009
Statut
Membre
Dernière intervention
10 août 2011
18
14 nov. 2009 à 16:24
14 nov. 2009 à 16:24
hello, désolé de ne pas avoir réagi plus tôt, j'étais assez occupé ;-)
Sinon tout d'abord Archeus01, je te remercie pour tes réponses, ensuite j'ai trouvé où était ma faute.
Si ca peut faire profiter quelqu'un , lorsqu'on veut comparer une date qui se trouve dans la base de donnée SOUS LE FORMAT DATE AMERICAIN 0000-00-00 avec une date qu'un utilisateur sélectionne sur le site de type DATE FRANCAISE 00/00/0000
/* On fait passer notre variable dans la fonction
Bonne journée a tous ;-)
Sinon tout d'abord Archeus01, je te remercie pour tes réponses, ensuite j'ai trouvé où était ma faute.
Si ca peut faire profiter quelqu'un , lorsqu'on veut comparer une date qui se trouve dans la base de donnée SOUS LE FORMAT DATE AMERICAIN 0000-00-00 avec une date qu'un utilisateur sélectionne sur le site de type DATE FRANCAISE 00/00/0000
/* Convertit les dates de type JJ/MM/AAAA vers le format Date DB américain YYYY-MM-DD */ function dateUS($date) { $date = explode('/', $date); $date = array_reverse($date); $date = implode('-', $date); return $date; }
/* On fait passer notre variable dans la fonction
$date=$shipDate; // vaut 14/11/2009 $shipDate=dateUS($date); // ici shipDate vaudra 2009-11-14
... Connexion a la DB .... // Ne pas oublier les ' ' entre le nom de la variable, mon erreur venait de la $result=mysql_query("SELECT shipDate FROM orders WHERE shipDate = '$shipDate' ") $date=mysql_fetch_array($request); print_r($date);
Bonne journée a tous ;-)