Copy link to clipboard
Copied
Bonjour,
Alors que je l'ai fait de nombreuses fois dans d'autres programmes, cette fois-ci j'ai une erreur :
Quelle est la bonne méthode ?
Voici une partie de mon code
<!--------------------------------- CREATION ------------------------>
<CFIF mode IS "creation">
<TABLE width="100%" border="0" bordercolor="yellow" cellspacing="0" cellpadding="0" align="CENTER">
<CFFORM action="beug.cfm?mode=Insert" enctype="multipart/form-data" method="POST">
<TR>
<TD class="txtmm" width="20%"> Prix TTC en euro</TD><!--- Prix TTC --->
<TD align="right" class="txtmm">
<CFINPUT type="text" name="NumberFormat(LP_PrixJaune, '99.99')" size="17" maxlength="40" style="text-align:right">
</TD>
<TD align="right" class="txtmm">
<CFINPUT type="Text" name="NumberFormat(PrixBleu, '99.99')" size="17" maxlength="40" style="text-align:right">
</TD>
</TR>
</CFFORM>
</TABLE>
</CFIF>
<!--------------------------------- INSERT ----------------------->
<CFIF mode IS "insert">
<CFIF form.PrixBleu IS "" AND form.Prixjaune IS "" AND form._Prixrouge IS "" AND form.LP_PrixVert IS "">
<cfset AffUpdate=affUpdate & "Une, au moins, des zones Prix est requise<BR>">
</CFIF>
<cfparam name="PrixBleu" default=0>
<cfparam name="LP_PrixJaune" default=0>
<!--- <CFIF form.PrixBleu IS ""><cfset PrixBleu=0></CFIF> --->
<!--- <CFIF form.LP_PrixJaune IS ""><cfset LP_PrixJaune=0></CFIF> --->
<!--- <CFIF NOT IsDefined("form.LP_PrixJaune")><cfset form.LP_PrixJaune=0></CFIF> --->
<CFOUTPUT>form.LP_PrixJaune : #form.LP_PrixJaune# - PrixBleu : #form.PrixBleu#</CFOUTPUT>
<CFQUERY name="Prix" datasource="#session.dbname#">
INSERT INTO Prix
LP_PrixJaune,
PrixBleu
)
VALUES
'#form.LP_ISBNPoche#',
#form.LP_PrixJaune#,
#form.PrixBleu#
)
</CFQUERY>
</CFIF>
J'ai 2 soucis :
1 - je voudrais avoir 0 si la zone est vide alors que j'obtiens ''
2 - comment tester une variable si elle est absente d'un Form .
Merci pour votre éclairage car cela fonctionnait jusqu'à présent !
Cordialement
1 - je voudrais avoir 0 si la zone est vide alors que j'obtiens ''
Then replace
<cfparam name="form.PrixBleu" default=0>
with
<cfif isDefined("form.PrixBleu") and trim(form.PrixBleu) is "">
<cfset form.PrixBleu = 0>
</cfif>
2 - comment tester une variable si elle est absente d'un Form .
<cfif not isDefined("form.LP_ISBNPoche")>
...
</cfif>
Copy link to clipboard
Copied
First, some suggestions:
Replace
<CFINPUT type="text" name="NumberFormat(LP_PrixJaune, '99.99')" size="17" maxlength="40" style="text-align:right">
<CFINPUT type="Text" name="NumberFormat(PrixBleu, '99.99')" size="17" maxlength="40" style="text-align:right">
respectively with
<CFINPUT type="text" name="LP_PrixJaune" value="#NumberFormat(form.LP_PrixJaune, '99.99')#" size="17" maxlength="40" style="text-align:right">
<CFINPUT type="Text" name="PrixBleu" value="#NumberFormat(form.PrixBleu, '99.99')#" size="17" maxlength="40" style="text-align:right">
Replace
<CFIF mode IS "creation">
<CFIF mode IS "insert">
respectively with
<CFIF url.mode IS "creation">
<CFIF url.mode IS "insert">
Use cfparam - as you have done - to set the default values:
<cfparam name="form.PrixBleu" default=0>
<cfparam name="form.LP_PrixJaune" default=0>
<cfparam name="form._PrixRouge" default=0>
<cfparam name="form.LP_PrixVert" default=0>
<cfparam name="form.LP_ISBNPoche" default="">
Include a submit button for the form.
With those suggestions, your code should be something like
<CFIF url.mode IS "creation">
<cfparam name="form.PrixBleu" default=0>
<cfparam name="form.LP_PrixJaune" default=0>
<TABLE width="100%" border="0" bordercolor="yellow" cellspacing="0" cellpadding="0" align="CENTER">
<CFFORM action="beug.cfm?mode=Insert" enctype="multipart/form-data" method="POST">
<TR>
<TD class="txtmm" width="20%"> Prix TTC en euro</TD><!--- Prix TTC --->
<TD align="right" class="txtmm">
<CFINPUT type="text" name="LP_PrixJaune" value="#NumberFormat(form.LP_PrixJaune, '99.99')#" size="17" maxlength="40" style="text-align:right">
</TD>
<TD align="right" class="txtmm">
<CFINPUT type="Text" name="PrixBleu" value="#NumberFormat(form.PrixBleu, '99.99')#" size="17" maxlength="40" style="text-align:right">
</TD>
<!--- Suggestion --->
<TD align="right" class="txtmm">
<CFINPUT type="submit" name="Insert" value="Insert">
</TD>
</TR>
</CFFORM>
</TABLE>
</CFIF>
<!--------------------------------- INSERT ----------------------->
<CFIF url.mode IS "insert">
<cfparam name="form.PrixBleu" default=0>
<cfparam name="form.LP_PrixJaune" default=0>
<cfparam name="form._PrixRouge" default=0>
<cfparam name="form.LP_PrixVert" default=0>
<cfparam name="form.LP_ISBNPoche" default=0>
<CFIF form.PrixBleu IS 0 AND form.LP_Prixjaune IS 0 AND form._Prixrouge IS 0 AND form.LP_PrixVert IS 0>
<cfset AffUpdate=affUpdate & "Une, au moins, des zones Prix est requise<BR>">
</CFIF>
<CFOUTPUT>form.LP_PrixJaune : #form.LP_PrixJaune# - PrixBleu : #form.PrixBleu#</CFOUTPUT>
<CFQUERY name="Prix" datasource="#session.dbname#">
INSERT INTO Prix
LP_ISBNPoche,
LP_PrixJaune,
PrixBleu
)
VALUES
'#form.LP_ISBNPoche#',
#form.LP_PrixJaune#,
#form.PrixBleu#
)
</CFQUERY>
</CFIF>
Copy link to clipboard
Copied
1 - je voudrais avoir 0 si la zone est vide alors que j'obtiens ''
Then replace
<cfparam name="form.PrixBleu" default=0>
with
<cfif isDefined("form.PrixBleu") and trim(form.PrixBleu) is "">
<cfset form.PrixBleu = 0>
</cfif>
2 - comment tester une variable si elle est absente d'un Form .
<cfif not isDefined("form.LP_ISBNPoche")>
...
</cfif>
Copy link to clipboard
Copied
Merci encore
c'est ce que je fais mais j'ai des "blocages" je ne sais pas pourquoi !
Cordialement