[PHP-PostgreSQL] Problème d'échappement de caractères

Problème d'échappement de caractères [PHP-PostgreSQL] - PHP - Programmation

Marsh Posté le 04-03-2008 à 17:53:56    

Bonjour  :hello: ,
 
J'ai le bout de code php suivant :
 

Code :
  1. $where .= " AND DATE(M.date_limite_candidature)>=DATE '".recupDate("dateLimCandMin" )."'";


 
La fonction recupDate fait planter la requête car, avec l'appel, la requête se fini par ">=DATE ''" et '' n'est pas une date alors postgreSQL plante. Voici le code retourné par recupDate :
 

Code :
  1. function recupDate($name){
  2.   if (! isset($_REQUEST["{$name}Annee"]) || empty($_REQUEST["{$name}Annee"])) return null;
  3.   if (! isset($_REQUEST["{$name}Mois"]) || empty($_REQUEST["{$name}Mois"])) return null;
  4.   if (! isset($_REQUEST["{$name}Jour"]) || empty($_REQUEST["{$name}Jour"])) return null;
  5.  
  6.   if($_REQUEST["{$name}Jour"]>date("d",mktime(0,0,0,$_REQUEST["{$name}Mois"]+1,0,$_REQUEST["{$name}Annee"]))) $_REQUEST["{$name}Jour"]=date("d",mktime(0,0,0,$_REQUEST["{$name}Mois"]+1,0,$_REQUEST["{$name}Annee"]));
  7.   $tmp = getFromArray($_REQUEST,"{$name}Annee" )."-".getFromArray($_REQUEST,"{$name}Mois" )."-".getFromArray($_REQUEST,"{$name}Jour" );
  8.   if (isset ($_REQUEST["{$name}Heure"]) && $_REQUEST["{$name}Heure"]!= '' && isset($_REQUEST["{$name}Minute"])){
  9.     $tmp.=" ".getFromArray($_REQUEST,"{$name}Heure" ).":".getFromArray($_REQUEST,"{$name}Minute" );
  10.   }
  11.   return $tmp;
  12. }


 
Que faut-il faire pour que j'ai par exemple :  

Code :
  1. $where .= " AND DATE(M.date_limite_candidature)>=DATE '2008-02-01';


 
Cette requête "en dur" ci-dessus marche. et mon $tmp merde, même si je renvoie en dur la chaîne '2008-02-01' dans recupDate : il y a un problème d'escape de charactère :/.
 
Une piste ?  :cry:


---------------
Asus P5Q Pro | C2D E8400 3GHz@4GHz + Noctua NH-C12P | 2x2Go Patriot Extreme PC-8500 | GeForce GTX 460@Stock 1Go GLH | Crucial SSD M4 64Go Sata3
Reply

Marsh Posté le 04-03-2008 à 17:53:56   

Reply

Marsh Posté le 04-03-2008 à 22:13:44    

j'ai fait to_date(recupDate("dateLimCandMin" ),"YYYY-MM-DD" )) et ça marche nickel :).


---------------
Asus P5Q Pro | C2D E8400 3GHz@4GHz + Noctua NH-C12P | 2x2Go Patriot Extreme PC-8500 | GeForce GTX 460@Stock 1Go GLH | Crucial SSD M4 64Go Sata3
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed