Bonjour,
J'ai un souci dans l'affichage de zone qui contiennent des "leading" zero !
Voici mon log.php et les parties importantes en gras....
J'ai essayé une fonction écrite par moi même,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72 PHP Notice: display(2) => Date de naissance[20101112] in F:\WebSites\checkform\class\validation\date.php on line 125 PHP Stack trace: PHP 1. {main}() F:\WebSites\checkform\index.php:0 PHP 2. setScreen->execute() F:\WebSites\checkform\index.php:15 PHP 3. Skeleton->execute() F:\WebSites\checkform\class\setScreen.php:154 PHP 4. Skeleton->displayPage() F:\WebSites\checkform\class\newSkelt.php:313 PHP 5. require_once() F:\WebSites\checkform\class\newSkelt.php:394 PHP 6. require_once() F:\WebSites\checkform\config\myPage.php:181 PHP 7. require_once() F:\WebSites\checkform\doc\do_index.php:79 PHP 8. Date->display() F:\WebSites\checkform\config\formdef.php:123 PHP 9. user_error() F:\WebSites\checkform\class\validation\date.php:125 PHP Notice: POST SUBMIT CATCHED in F:\WebSites\checkform\doc\do_index.php on line 58 PHP Stack trace: PHP 1. {main}() F:\WebSites\checkform\index.php:0 PHP 2. setScreen->execute() F:\WebSites\checkform\index.php:15 PHP 3. Skeleton->execute() F:\WebSites\checkform\class\setScreen.php:154 PHP 4. Skeleton->displayPage() F:\WebSites\checkform\class\newSkelt.php:313 PHP 5. require_once() F:\WebSites\checkform\class\newSkelt.php:394 PHP 6. require_once() F:\WebSites\checkform\config\myPage.php:181 PHP 7. user_error() F:\WebSites\checkform\doc\do_index.php:58 PHP Notice: ===>getFormContent in F:\WebSites\checkform\class\validate.php on line 376 PHP Stack trace: PHP 1. {main}() F:\WebSites\checkform\index.php:0 PHP 2. setScreen->execute() F:\WebSites\checkform\index.php:15 PHP 3. Skeleton->execute() F:\WebSites\checkform\class\setScreen.php:154 PHP 4. Skeleton->displayPage() F:\WebSites\checkform\class\newSkelt.php:313 PHP 5. require_once() F:\WebSites\checkform\class\newSkelt.php:394 PHP 6. require_once() F:\WebSites\checkform\config\myPage.php:181 PHP 7. Form->getFormContent() F:\WebSites\checkform\doc\do_index.php:62 PHP 8. user_error() F:\WebSites\checkform\class\validate.php:376 PHP Notice: ===>getFieldValue[ 0 0 0] in F:\WebSites\checkform\class\validation\date.php on line 153 PHP Stack trace: PHP 1. {main}() F:\WebSites\checkform\index.php:0 PHP 2. setScreen->execute() F:\WebSites\checkform\index.php:15 PHP 3. Skeleton->execute() F:\WebSites\checkform\class\setScreen.php:154 PHP 4. Skeleton->displayPage() F:\WebSites\checkform\class\newSkelt.php:313 PHP 5. require_once() F:\WebSites\checkform\class\newSkelt.php:394 PHP 6. require_once() F:\WebSites\checkform\config\myPage.php:181 PHP 7. Form->getFormContent() F:\WebSites\checkform\doc\do_index.php:62 PHP 8. Date->getFieldValue() F:\WebSites\checkform\class\validate.php:383 PHP 9. user_error() F:\WebSites\checkform\class\validation\date.php:153 PHP Notice: getFieldValue => Date de naissance[ 0 0 0] in F:\WebSites\checkform\class\validation\date.php on line 159 PHP Stack trace: PHP 1. {main}() F:\WebSites\checkform\index.php:0 PHP 2. setScreen->execute() F:\WebSites\checkform\index.php:15 PHP 3. Skeleton->execute() F:\WebSites\checkform\class\setScreen.php:154 PHP 4. Skeleton->displayPage() F:\WebSites\checkform\class\newSkelt.php:313 PHP 5. require_once() F:\WebSites\checkform\class\newSkelt.php:394 PHP 6. require_once() F:\WebSites\checkform\config\myPage.php:181 PHP 7. Form->getFormContent() F:\WebSites\checkform\doc\do_index.php:62 PHP 8. Date->getFieldValue() F:\WebSites\checkform\class\validate.php:383 PHP 9. user_error() F:\WebSites\checkform\class\validation\date.php:159 PHP Notice: ***** >SUBMIT Catched in F:\WebSites\checkform\doc\do_index.php on line 64 PHP Stack trace: PHP 1. {main}() F:\WebSites\checkform\index.php:0 PHP 2. setScreen->execute() F:\WebSites\checkform\index.php:15 PHP 3. Skeleton->execute() F:\WebSites\checkform\class\setScreen.php:154 PHP 4. Skeleton->displayPage() F:\WebSites\checkform\class\newSkelt.php:313 PHP 5. require_once() F:\WebSites\checkform\class\newSkelt.php:394 PHP 6. require_once() F:\WebSites\checkform\config\myPage.php:181 PHP 7. user_error() F:\WebSites\checkform\doc\do_index.php:64 PHP Notice: display(2) => Date de naissance[1992 519] in F:\WebSites\checkform\class\validation\date.php on line 125 PHP Stack trace: PHP 1. {main}() F:\WebSites\checkform\index.php:0 PHP 2. setScreen->execute() F:\WebSites\checkform\index.php:15 PHP 3. Skeleton->execute() F:\WebSites\checkform\class\setScreen.php:154 PHP 4. Skeleton->displayPage() F:\WebSites\checkform\class\newSkelt.php:313 PHP 5. require_once() F:\WebSites\checkform\class\newSkelt.php:394 PHP 6. require_once() F:\WebSites\checkform\config\myPage.php:181 PHP 7. require_once() F:\WebSites\checkform\doc\do_index.php:79 PHP 8. Date->display() F:\WebSites\checkform\config\formdef.php:123 PHP 9. user_error() F:\WebSites\checkform\class\validation\date.php:125
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 /** * fill * ==== */ function fill($str,$len) { //user_error("==> fill[".$str."] <= [".strlen($str)."] < [".$len."]",E_USER_NOTICE) ; for ($i = 0 ; strlen($str) < $len ; $i++) { //user_error("+" , E_USER_NOTICE) ; $str = "0" . $str ; } //user_error("==> fill[".$str."] - [".$len."]",E_USER_NOTICE) ; return($str) ; }et toujours le même résultat.....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 preg_replace ($zone, " ", "0") str_replace(" ", "0",$zone) et une 4 ième dont je ne me souviens plus du nom, dsl.... ;)
Ma hiérarche de classe est la suivante: Kernet => Form => Date/String....
Je vous mets un bout de "date" ici car il semble que ce soit la seule qui présente ce problème:
Espérons que je vais trouver parmis vous :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153 function __construct($name, $must, $legend, $default, $debug=false) { $this->name = $name ; $this->must = $must ; $this->legend = $legend ; $this->value = (isset( $_POST["$this->name"] ) ) ? trim($_POST["$this->name"]) : NULL ; $this->debug = $debug ; if (isset($default)) switch($default) { case TODAY : $this->date = date("Ymd") ; break ; default : user_error("Invalid Date default", E_USER_ERROR) ; break ; } else $this->date = date("Ymd") ; // ================================================================== 20101109 /* $this->yy = $this->fill(substr($this->date,0,4),4) ; // ======== $this->mm = $this->fill(substr($this->date,4,2),2) ; // 01234567 $this->dd = $this->fill(substr($this->date,6,2),2) ; // yyyymmdd if ($this->debug) var_dump("===> CONSTRUCT DATE =>: ",$this->date) ; */ } function __destruct() { } function execute() { } /** * validate * ======== */ function validate() { return( checkdate($this->fill($this->mm,2), $this->fill($this->dd,2), $this->fill($this->yy,4) ) ? OK : ERRDATE) ; } /** * pickup * ======= * */ function pickup($start,$end,$len,$frmfld,$default) { echo "<select name='" . $frmfld . "' id='" . $frmfld . "'>\n"; for ($i = $start ; $i <= $end ; $i++) { $d = $this->fill($i,$len) ; if (strcmp($default,$d) == 0) echo ' <option value="' . $d . '" selected">' . $d. "</option>\n" ; else echo ' <option value="' . $d . '">' . $d . "</option>\n" ; } echo "</select>\n" ; } /** * select * ======= * */ function select($valarray,$frmfld,$default) { echo "<select name='" . $frmfld . "' id='" . $frmfld . "'>\n"; foreach ($valarray as $key => $value) { if (strcmp($default,$key) == 0) echo ' <option value="' . $key . '" selected">' . $value . "</option>\n" ; else echo ' <option value="' . $key . '">' . $value . "</option>\n" ; } echo "</select>\n" ; } /** * display * ======= * */ function display() { $this->dd = (isset($_POST["dd"])) ? $_POST["dd"] : date("d") ; $this->mm = (isset($_POST["mm"])) ? $_POST["mm"] : date("m") ; // format interne $this->yy = (isset($_POST["yy"])) ? $_POST["yy"] : date("Y") ; //if ($this->debug) var_dump("display(0) : => " ,$this->mm,$this->dd,$this->yy) ; echo "<fieldset><legend class='form_lbl'>" ; echo $this->legend ; echo "</legend>" ; echo '<span class="form_fld fieldset">' ; $this->pickup(1,31,2, $name="dd",$default=$this->dd) ; echo '</span>' ; echo '<span class="form_bkg fieldset">' ; echo "-" ; echo '</span>' ; echo '<span class="form_fld fieldset">' ; $this->select($this->month, $name="mm",$default=$this->mm) ; //array_search($this->mm, $this->month)) ; echo '</span>' ; echo '<span class="form_bkg">' ; echo "-" ; echo '</span>' ; echo '<span class="form_fld">' ; $this->pickup(1920,2020,4, $name="yy",$default=$this->yy) ; echo '</span>' ; echo "</fieldset>" ; $this->yy = (isset($_POST["yy"])) ? $_POST["yy"] : date("Y") ; $this->mm = (isset($_POST["mm"])) ? $_POST["mm"] : date("m") ; // format interne $this->dd = (isset($_POST["dd"])) ? $_POST["dd"] : date("d") ; //if ($this->debug) { var_dump("display(1) => Date de naissance: ",$this->mm,$this->dd,$this->yy ) ; $this->value = sprintf("%4d%2d%2d",$this->yy, $this->mm, $this->fill($this->dd,2)) ; user_error("display(2) => Date de naissance[".$this->value."]", E_USER_NOTICE) ; } } /** * getFieldName * ============ * */ function getFieldName() { return($this->name) ; } /** * getFieldLegend * ============== * */ function getFieldLegend() { return($this->legend) ; } /** * getFieldValue * ============= * */ function getFieldValue() { //var_dump("getFieldValue => Date de naissance: ",$this->mm,$this->dd,$this->yy ) ; $date = sprintf("%4d%2d%2d",$this->yy, $this->mm, $this->dd) ; // 20101109 user_error("===>getFieldValue[".$date."]", E_USER_NOTICE) ; // ====--== // 0123456789 //if ($this->debug) { var_dump("getFieldValue => Date de naissance[",$this->mm,$this->dd,$this->yy,"]") ; user_error("getFieldValue => Date de naissance[".$date."]", E_USER_NOTICE) ; } return( $date ) ; } }
Partager