dolibarr-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Dolibarr-dev] Cote SQL sur numerique


From: Eric Seigne
Subject: Re: [Dolibarr-dev] Cote SQL sur numerique
Date: Fri, 27 Feb 2004 11:59:03 +0100
User-agent: Mutt/1.5.4i

On Thu, Feb 26, 2004 at 06:01:19PM +0100, Rodolphe Quiédeville wrote:
>Salut,
>
>Destiné à Eric mais intéresse tout le monde, pourquoi dans societe.class.php 
>tu cotes dans la requete sql l'id qui est un numérique ?
>
><<<<<<< variant A
>      $sql .= " WHERE s.idp = ".$this->id;
>      $sql .= " AND s.fk_stcomm = st.id";
>>>>>>>> variant B
>
>      $sql .= " WHERE s.idp = '".$this->id . "'";
>======= end
>
>La variant A est la mienne et la B la tienne, je ne comprends pas pourquoi tu 
>mets des cotes autour de $this->id ?

Hello,
 la 1ere réponse est par habitude

 la seconde est que j'ai déjà eu des bugs lourds de conséquences à cause
 de cascades, imagine que t'a  un bug dans $this->id qui deviendrait par
 exemple null ça donnerait une requete
 WHERE s.idp = AND s.fk_stcomm = st.id
 et je préfère avoir
 WHERE s.idp = '' AND s.fk_stcomm = st.id

 la 3°  c'est que comme php ne  gère pas les type  $this->id peut porter
 n'importe quoi, y compris du texte

valà  en fait si  vous ne  voulez pas  de quotes  autour des  champs qui
"devraient"  etres  des nombres  je  me  plie  à votre  décision,  c'est
beaucoup  plus  une question  d'habitude  de  ma part,  systèmatiquement
j'encadre de quotes (et je addslashes aussi tous les champs pour essayer
d'eviter  les  écrasements  de  requetes  SQL)  même  si  ce  n'est  pas
indispensable  ... et à  vrai dire  je suis  heureux que  tu me  pose la
question parceque je me demande maintenant ce qu'il vaut mieux faire :o)

un expert SQL dans la salle avant que je reprenne mes cours de l'iut ?

a+
Éric
-- 
Éric Seigne, Gérant                       | address@hidden
RyXéo SARL                                | http://www.ryxeo.com
3 rue du golf, Parc Innolin               | tel +33 6 987 444 01
33700 Mérignac - FRANCE                   | fax +33 5 568 335 84

Attachment: signature.asc
Description: Digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]