Probleme SQL PHP - effectuer une requête avec inférieur ou égale et une date ...

FXPHANTOM Messages postés 60 Date d'inscription lundi 11 janvier 2010 Statut Membre Dernière intervention 10 mai 2012 - 17 avril 2012 à 10:13
FXPHANTOM Messages postés 60 Date d'inscription lundi 11 janvier 2010 Statut Membre Dernière intervention 10 mai 2012 - 10 mai 2012 à 08:21
Bonjour ,
Je vous remets entre les mains un petit problème facheux ...
Ma requête fonctionne très bien lorsque $date = date (DD-MM-YYYY)et quand $date >= date(DD-MM-YYYY);
par contre lorsque je souhaite récupérer les uniquement les dates inférieures ou égales alors j'obtiens le message suivant :

Notice: Undefined variable: config in /www/lwt/process.php on line 5 à 10

dans ma base de données , la date est inscrite de la manière suivante : VARCHAR(25) date_deb : JJ-MM-AAAA

le code la page est le suivant :

<?php
require_once("***/***.php");
$date = date("d-m-Y");
$db2 = mysql_select_db( $database_protection) ;
$sql2 = "SELECT date_fin_jou,date_fin_moi,date_fin_ann,date_fin_heu,date_fin_min,date_fin_sec FROM offres WHERE validation='0' AND date_deb <= $date";
$requete2 = mysql_query($sql2) or die('Erreur SQL !
'.$sql2.'
'.mysql_error());
while ($data = mysql_fetch_assoc($requete2)) 
{
 $config = array(
'targetDate' => array(	// Target countdown date
'day'	 => $data['date_fin_jou'],
'month'	 => $data['date_fin_moi'],
'year'	 => $data['date_fin_ann'],
'hour'   => $data['date_fin_heu'],
'minute' => $data['date_fin_min'],
'second' => $data['date_fin_sec']
)
);} 
?>


En vous remerciant par avance ...

BFx
A voir également:

7 réponses

FXPHANTOM Messages postés 60 Date d'inscription lundi 11 janvier 2010 Statut Membre Dernière intervention 10 mai 2012
17 avril 2012 à 10:23

<?php
require_once("***/***.php");
$date = date("d-m-Y");
$db2 = mysql_select_db( $database_protection) ;
$sql2 = "SELECT date_fin_jou,date_fin_moi,date_fin_ann,date_fin_heu,
date_fin_min,date_fin_sec FROM offres WHERE validation='0' 
AND date_deb <= $date";
$requete2 = mysql_query($sql2) or die('Erreur SQL !
'.$sql2.'
'.mysql_error());
while ($data = mysql_fetch_assoc($requete2)) 
{
 $config = array(
'targetDate' => array(	// Target countdown date
'day'	 => $data['date_fin_jou'],
'month'	 => $data['date_fin_moi'],
'year'	 => $data['date_fin_ann'],
'hour'   => $data['date_fin_heu'],
'minute' => $data['date_fin_min'],
'second' => $data['date_fin_sec']
)
);} 
?>


BFx
0
TychoBrahe Messages postés 1309 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 5 juin 2013 12
17 avril 2012 à 19:15
Salut,

dans ma base de données , la date est inscrite de la manière suivante : VARCHAR(25) date_deb : JJ-MM-AAAA

C'est ta première erreur : tu aurais du utiliser un champ de type DATE. Je te recommande de changer rapidement ceci sans quoi tu ne pourras pas manipuler les dates comme tu le souhaites dans tes requêtes SQL.

$date = date("d-m-Y");

Seconde erreur, mais sans conséquences : MySQL possède des fonctions internes qui sont bien plus pratiques et performantes pour faire ça. Réfère toi aux fonctions de date et heure.

AND date_deb <= $date

Une autre erreur avec cette (mauvaise) méthode : tu aurais du mettre des quotes autour de la valeur de la date. M'enfin si tu utilises une fonction MySQL ce ne sera plus la peine.
0
FXPHANTOM Messages postés 60 Date d'inscription lundi 11 janvier 2010 Statut Membre Dernière intervention 10 mai 2012
17 avril 2012 à 22:01
Merci , super sympa , je vais y travailler , je posterai les modifications ... ;-)

BFx
0
FXPHANTOM Messages postés 60 Date d'inscription lundi 11 janvier 2010 Statut Membre Dernière intervention 10 mai 2012
9 mai 2012 à 09:59
Par contre dans mon compte a rebours en jquery , j'ai un soucis , il ne fonctionne qu'une fois et non repete comme il devrai l'etre !!!!

<?php 

$date = date("d-m-Y");
$db2 = mysql_select_db( $database_dbprotect ) ;

$sql2 = "SELECT id_offres,smalltitre,image01,description,date_fin_jou,date_fin_moi,
date_fin_ann,date_fin_heu,date_fin_min,date_fin_sec,validation,deal_val,pages FROM offrespro WHERE validation='0' ";

$requete2 = mysql_query($sql2) or die('Erreur SQL !
'.$sql2.'
'.mysql_error());

while ($data = mysql_fetch_assoc($requete2)) // On fait une boucle pour récupérer les résultats, le FETCH_OBJ peut être considéré comme le array.

{ ?> 



                  

<?php echo "".$data['smalltitre']."" ; ?>

             
     
<!-- Countdown dashboard end -->

    <!-- Debut du compte a rebours -->
<script language="Javascript" type="text/javascript" src="js/jquery-1.4.1.js"></script>
<script language="Javascript" type="text/javascript" src="js/jquery.lwtCountdown-1.0.js"></script>

<? include('cntdwn/deals_cntdwn.php'); ?>
    <!-- fin du compte a rebours -->

       


[# " alt="" />]

<?php echo "".$data['description']."" ; ?>


[http://www.bfxdealscount.fr/consult_deal.php?id_offres=<?php echo  &validation=<?php echo "".$data['validation']."" ; ?>" class="h2_more">Voir le Deal]       [# <?php echo "".$data['deal_val']." Acheteur(s)" ; ?>]


    	
 
<?php     }?>   
                  
            




BFx
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
TychoBrahe Messages postés 1309 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 5 juin 2013 12
9 mai 2012 à 16:21
language="Javascript"

Cet attribut est obsolète, retire le stp.

Sinon il est configuré où ton compte à rebours ? As-tu regardé la documentations sur comment le mettre en place ?
0
FXPHANTOM Messages postés 60 Date d'inscription lundi 11 janvier 2010 Statut Membre Dernière intervention 10 mai 2012
9 mai 2012 à 18:41
Je l'ai déjà mis en place sur une autre page est il fonctionne très bien , mais une page comportant un seul compte a rebours .

Le soucis est que lorsque je mets les deux lignes suivantes dans header de ma page , mes compteurs fonctionnent mais ne s'arrete pas à zéro:





Alors que si je les mets entre ma requete SQL et
comme dans l'exemple un peu plus haut alors 1 seul compteur fonctionne uniquement. Je dois te dire que j'en perds un peu mon latin .

Mon compte à rebours est configuré dans le fichier suivant :






















hours











minutes











seconds










jQuery(document).ready(function() {
$('#countdown_dashboard').countDown({
targetDate: {
'day': ,
'month': ,
'year': ,
'hour': ,
'min': ,
'sec':
}
});

// Subscription functions
$('#email_field').focus(email_focus).blur(email_blur);
$('#subscribe_form').bind('submit', subscribe_submit);
});






[u]
Le fichier process_date.php : /u




le fichier config.php , le code est le suivant :


0
FXPHANTOM Messages postés 60 Date d'inscription lundi 11 janvier 2010 Statut Membre Dernière intervention 10 mai 2012
10 mai 2012 à 08:21
Bonjour ,
J'ai effectué toutes les modifications demandées (javascript, champs DATE, utilisation de currentdate() au lieu de $date ...) mais toujours pas d'amélioration .


BFx
0
Rejoignez-nous