je voudrais faire un planning, avec mysql, qui gère les bannière de pub à la semaine sur mon site internet.
j'aime bien programmer plein de choses, mais je butte déjà sur un ch'tit problème..
voici ma prog et mes tables :
alors voilà, la table qui va enregitrer les informations sur les bannière :
Code :
- CREATE TABLE pub_banniere (
- id int(3) unsigned NOT NULL auto_increment,
- ref varchar(10) NOT NULL default '',
- page varchar(5) NOT NULL default '',
- week_s int(2) unsigned NOT NULL default '0',
- year_s year(4) NOT NULL default '0000',
- week_e int(2) unsigned NOT NULL default '0',
- year_e year(4) NOT NULL default '0000',
- entreprise varchar(255) NOT NULL default '',
- banniere varchar(50) NOT NULL default '',
- url varchar(255) NOT NULL default '',
- PRIMARY KEY (id),
- UNIQUE KEY ref (ref)
- ) TYPE=MyISAM;
|
mon problème est à l'insertion dans cette base, puisqu'il faut que les bannières ne puissent pas être sur la même page, la même semaine, de la même année...
donc, avant même de faire mon INSERT, je fait un SELECT et si @mysql_num_rows(SELECT)>0, alors, il me retourne une erreur, puisque qu'il existe déjà un client à cette semaine.
je vous met la requête que j'utilise :
Code :
- select id from pub_banniere
- where page='BP001' and
- (week_s>='".$week_s."' and year_s>='".$year_s."') and
- (week_e<='".$week_e."' and year_e>='".$year_e."');
|
Où $week_s correspond à la semaine de départ, $week_e, la semaine de fin, $year_s, l'année de départ et $year_e, l'année de fin.
j'aimerais donc savoir ce que vous en pensez et si vous trouveriez un moyen pour faire de cette requête
- Soit quelquechose de plus court
- Soit quelquechose "d'infaillible".
Merci de votre particpation.