| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 18942 -->
- <!-- Reviewed: no -->
- <sect1 id="zend.validate.messages">
- <title>Messages de validation</title>
- <para>
- Chaque validateur basé sur <classname>Zend_Validate</classname> propose un ou plusieurs messages
- dans le cas d'un echec. Vous pouvez utiliser ces informations pour créer vos propres messages
- ou pour traduire les messages présents. La table suivante liste tous les messages retournés
- par tous les validateurs.
- </para>
- <table id="zend.validate.messages.table">
- <title>Messages de validation disponibles</title>
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Validator</entry>
- <entry>Constant</entry>
- <entry>Message</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry morerows="1" valign="middle">Alnum</entry>
- <entry><constant>NOT_ALNUM</constant></entry>
- <entry>'%value%' has not only alphabetic and digit characters</entry>
- </row>
- <row>
- <entry><constant>STRING_EMPTY</constant></entry>
- <entry>'%value%' is an empty string</entry>
- </row>
- <row>
- <entry morerows="1" valign="middle">Alpha</entry>
- <entry><constant>NOT_ALPHA</constant></entry>
- <entry>'%value%' has not only alphabetic characters</entry>
- </row>
- <row>
- <entry><constant>STRING_EMPTY</constant></entry>
- <entry>'%value%' is an empty string</entry>
- </row>
- <row>
- <entry>Barcode</entry>
- <entry>---</entry>
- <entry>messages are thrown by a subclass</entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">Barcode_Ean13</entry>
- <entry><constant>INVALID</constant></entry>
- <entry>'%value%' is an invalid <constant>EAN</constant>-13 barcode</entry>
- </row>
- <row>
- <entry><constant>INVALID_LENGTH</constant></entry>
- <entry>'%value%' should be 13 characters</entry>
- </row>
- <row>
- <entry><constant>NOT_NUMERIC</constant></entry>
- <entry>'%value%' should contain only numeric characters</entry>
- </row>
- <row>
- <entry morerows="1" valign="middle">Barcode_UpcA</entry>
- <entry><constant>INVALID</constant></entry>
- <entry>'%value%' is an invalid <constant>UPC</constant>-A barcode</entry>
- </row>
- <row>
- <entry><constant>INVALID_LENGTH</constant></entry>
- <entry>'%value%' should be 12 characters</entry>
- </row>
- <row>
- <entry morerows="1" valign="middle">Between</entry>
- <entry><constant>NOT_BETWEEN</constant></entry>
- <entry>'%value%' is not between '%min%' and '%max%', inclusively</entry>
- </row>
- <row>
- <entry><constant>NOT_BETWEEN_STRICT</constant></entry>
- <entry>'%value%' is not strictly between '%min%' and '%max%'</entry>
- </row>
- <row>
- <entry morerows="1" valign="middle">Ccnum</entry>
- <entry><constant>LENGTH</constant></entry>
- <entry>'%value%' must contain between 13 and 19 digits</entry>
- </row>
- <row>
- <entry><constant>CHECKSUM</constant></entry>
- <entry>Luhn algorithm (mod-10 checksum) failed on '%value%'</entry>
- </row>
- <row>
- <entry morerows="1" valign="middle">Date</entry>
- <entry><constant>FALSEFORMAT</constant></entry>
- <entry>'%value%' does not fit given date format</entry>
- </row>
- <row>
- <entry><constant>INVALID</constant></entry>
- <entry>'%value%' does not appear to be a valid date</entry>
- </row>
- <row>
- <entry morerows="1" valign="middle">Db_Abstract</entry>
- <entry><constant>ERROR_NO_RECORD_FOUND</constant></entry>
- <entry>No record matching %value% was found</entry>
- </row>
- <row>
- <entry><constant>ERROR_RECORD_FOUND</constant></entry>
- <entry>A record matching %value% was found</entry>
- </row>
- <row>
- <entry morerows="1" valign="middle">Digits</entry>
- <entry><constant>NOT_DIGITS</constant></entry>
- <entry>'%value%' contains not only digit characters</entry>
- </row>
- <row>
- <entry><constant>STRING_EMPTY</constant></entry>
- <entry>'%value%' is an empty string</entry>
- </row>
- <row>
- <entry morerows="7" valign="middle">EmailAddress</entry>
- <entry><constant>INVALID</constant></entry>
- <entry>
- '%value%' is not a valid email address in the basic format
- local-part@hostname
- </entry>
- </row>
- <row>
- <entry><constant>INVALID_FORMAT</constant></entry>
- <entry>'%value%' is not a valid email address in the basic format local-part@hostname</entry>
- </row>
- <row>
- <entry><constant>INVALID_HOSTNAME</constant></entry>
- <entry>'%hostname%' is not a valid hostname for email address '%value%'</entry>
- </row>
- <row>
- <entry><constant>INVALID_MX_RECORD</constant></entry>
- <entry>
- '%hostname%' does not appear to have a valid MX record for the email address
- '%value%'
- </entry>
- </row>
- <row>
- <entry><constant>DOT_ATOM</constant></entry>
- <entry>'%localPart%' not matched against dot-atom format</entry>
- </row>
- <row>
- <entry><constant>QUOTED_STRING</constant></entry>
- <entry>'%localPart%' not matched against quoted-string format</entry>
- </row>
- <row>
- <entry><constant>INVALID_LOCAL_PART</constant></entry>
- <entry>
- '%localPart%' is not a valid local part for email address '%value%'
- </entry>
- </row>
- <row>
- <entry><constant>LENGTH_EXCEEDED</constant></entry>
- <entry>'%value%' exceeds the allowed length</entry>
- </row>
- <row>
- <entry morerows="1" valign="middle">File_Count</entry>
- <entry><constant>TOO_MUCH</constant></entry>
- <entry>
- Too much files, maximum '%max%' are allowed but '%count%' are given
- </entry>
- </row>
- <row>
- <entry><constant>TOO_LESS</constant></entry>
- <entry>
- Too less files, minimum '%min%' are expected but '%count%' are given
- </entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">File_Crc32</entry>
- <entry><constant>DOES_NOT_MATCH</constant></entry>
- <entry>The file '%value%' does not match the given crc32 hashes</entry>
- </row>
- <row>
- <entry><constant>NOT_DETECTED</constant></entry>
- <entry>There was no crc32 hash detected for the given file</entry>
- </row>
- <row>
- <entry><constant>NOT_FOUND</constant></entry>
- <entry>The file '%value%' could not be found</entry>
- </row>
- <row>
- <entry morerows="1" valign="middle">File_ExcludeExtension</entry>
- <entry><constant>FALSE_EXTENSION</constant></entry>
- <entry>The file '%value%' has a false extension</entry>
- </row>
- <row>
- <entry><constant>NOT_FOUND</constant></entry>
- <entry>The file '%value%' was not found</entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">File_ExcludeMimeType</entry>
- <entry><constant>FALSE_TYPE</constant></entry>
- <entry>The file '%value%' has a false mimetype of '%type%'</entry>
- </row>
- <row>
- <entry><constant>NOT_DETECTED</constant></entry>
- <entry>The mimetype of file '%value%' could not been detected</entry>
- </row>
- <row>
- <entry><constant>NOT_READABLE</constant></entry>
- <entry>The file '%value%' can not be read</entry>
- </row>
- <row>
- <entry>File_Exists</entry>
- <entry><constant>DOES_NOT_EXIST</constant></entry>
- <entry>The file '%value%' does not exist</entry>
- </row>
- <row>
- <entry morerows="1" valign="middle">File_Extension</entry>
- <entry><constant>FALSE_EXTENSION</constant></entry>
- <entry>The file '%value%' has a false extension</entry>
- </row>
- <row>
- <entry><constant>NOT_FOUND</constant></entry>
- <entry>The file '%value%' was not found</entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">File_FilesSize</entry>
- <entry><constant>TOO_BIG</constant></entry>
- <entry>
- All files in sum should have a maximum size of '%max%' but '%size%' were
- detected
- </entry>
- </row>
- <row>
- <entry><constant>TOO_SMALL</constant></entry>
- <entry>
- All files in sum should have a minimum size of '%min%' but '%size%' were
- detected
- </entry>
- </row>
- <row>
- <entry><constant>NOT_READABLE</constant></entry>
- <entry>One or more files can not be read</entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">File_Hash</entry>
- <entry><constant>DOES_NOT_MATCH</constant></entry>
- <entry>The file '%value%' does not match the given hashes</entry>
- </row>
- <row>
- <entry><constant>NOT_DETECTED</constant></entry>
- <entry>There was no hash detected for the given file</entry>
- </row>
- <row>
- <entry><constant>NOT_FOUND</constant></entry>
- <entry>The file '%value%' could not be found</entry>
- </row>
- <row>
- <entry morerows="5" valign="middle">File_ImageSize</entry>
- <entry><constant>WIDTH_TOO_BIG</constant></entry>
- <entry>
- Maximum allowed width for image '%value%' should be '%maxwidth%' but
- '%width%' detected
- </entry>
- </row>
- <row>
- <entry><constant>WIDTH_TOO_SMALL</constant></entry>
- <entry>
- Minimum expected width for image '%value%' should be '%minwidth%' but
- '%width%' detected
- </entry>
- </row>
- <row>
- <entry><constant>HEIGHT_TOO_BIG</constant></entry>
- <entry>
- Maximum allowed height for image '%value%' should be '%maxheight%' but
- '%height%' detected
- </entry>
- </row>
- <row>
- <entry><constant>HEIGHT_TOO_SMALL</constant></entry>
- <entry>
- Minimum expected height for image '%value%' should be '%minheight%' but
- '%height%' detected
- </entry>
- </row>
- <row>
- <entry><constant>NOT_DETECTED</constant></entry>
- <entry>The size of image '%value%' could not be detected</entry>
- </row>
- <row>
- <entry><constant>NOT_READABLE</constant></entry>
- <entry>The image '%value%' can not be read</entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">File_IsCompressed</entry>
- <entry><constant>FALSE_TYPE</constant></entry>
- <entry>The file '%value%' is not compressed, '%type%' detected</entry>
- </row>
- <row>
- <entry><constant>NOT_DETECTED</constant></entry>
- <entry>The mimetype of file '%value%' could not been detected</entry>
- </row>
- <row>
- <entry><constant>NOT_READABLE</constant></entry>
- <entry>The file '%value%' can not be read</entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">File_IsImage</entry>
- <entry><constant>FALSE_TYPE</constant></entry>
- <entry>The file '%value%' is no image, '%type%' detected</entry>
- </row>
- <row>
- <entry><constant>NOT_DETECTED</constant></entry>
- <entry>The mimetype of file '%value%' could not been detected</entry>
- </row>
- <row>
- <entry><constant>NOT_READABLE</constant></entry>
- <entry>The file '%value%' can not be read</entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">File_Md5</entry>
- <entry><constant>DOES_NOT_MATCH</constant></entry>
- <entry>The file '%value%' does not match the given md5 hashes</entry>
- </row>
- <row>
- <entry><constant>NOT_DETECTED</constant></entry>
- <entry>There was no md5 hash detected for the given file</entry>
- </row>
- <row>
- <entry><constant>NOT_FOUND</constant></entry>
- <entry>The file '%value%' could not be found</entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">File_MimeType</entry>
- <entry><constant>FALSE_TYPE</constant></entry>
- <entry>The file '%value%' has a false mimetype of '%type%'</entry>
- </row>
- <row>
- <entry><constant>NOT_DETECTED</constant></entry>
- <entry>The mimetype of file '%value%' could not been detected</entry>
- </row>
- <row>
- <entry><constant>NOT_READABLE</constant></entry>
- <entry>The file '%value%' can not be read</entry>
- </row>
- <row>
- <entry>File_NotExists</entry>
- <entry><constant>DOES_EXIST</constant></entry>
- <entry>The file '%value%' does exist</entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">File_Sha1</entry>
- <entry><constant>DOES_NOT_MATCH</constant></entry>
- <entry>The file '%value%' does not match the given sha1 hashes</entry>
- </row>
- <row>
- <entry><constant>NOT_DETECTED</constant></entry>
- <entry>There was no sha1 hash detected for the given file</entry>
- </row>
- <row>
- <entry><constant>NOT_FOUND</constant></entry>
- <entry>The file '%value%' could not be found</entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">File_Size</entry>
- <entry><constant>TOO_BIG</constant></entry>
- <entry>
- Maximum allowed size for file '%value%' is '%max%' but '%size%' detected
- </entry>
- </row>
- <row>
- <entry><constant>TOO_SMALL</constant></entry>
- <entry>
- Minimum expected size for file '%value%' is '%min%' but '%size%' detected
- </entry>
- </row>
- <row>
- <entry><constant>NOT_FOUND</constant></entry>
- <entry>The file '%value%' could not be found</entry>
- </row>
- <row>
- <entry morerows="9" valign="middle">File_Upload</entry>
- <entry><constant>INI_SIZE</constant></entry>
- <entry>The file '%value%' exceeds the defined ini size</entry>
- </row>
- <row>
- <entry><constant>FORM_SIZE</constant></entry>
- <entry>The file '%value%' exceeds the defined form size</entry>
- </row>
- <row>
- <entry><constant>PARTIAL</constant></entry>
- <entry>The file '%value%' was only partially uploaded</entry>
- </row>
- <row>
- <entry><constant>NO_FILE</constant></entry>
- <entry>The file '%value%' was not uploaded</entry>
- </row>
- <row>
- <entry><constant>NO_TMP_DIR</constant></entry>
- <entry>No temporary directory was found for the file '%value%'</entry>
- </row>
- <row>
- <entry><constant>CANT_WRITE</constant></entry>
- <entry>The file '%value%' can't be written</entry>
- </row>
- <row>
- <entry><constant>EXTENSION</constant></entry>
- <entry>
- The extension returned an error while uploading the file '%value%'
- </entry>
- </row>
- <row>
- <entry><constant>ATTACK</constant></entry>
- <entry>The file '%value%' was illegal uploaded, possible attack</entry>
- </row>
- <row>
- <entry><constant>FILE_NOT_FOUND</constant></entry>
- <entry>The file '%value%' was not found</entry>
- </row>
- <row>
- <entry><constant>UNKNOWN</constant></entry>
- <entry>Unknown error while uploading the file '%value%'</entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">File_WordCount</entry>
- <entry><constant>TOO_MUCH</constant></entry>
- <entry>
- Too much words, maximum '%max%' are allowed but '%count%' were counted
- </entry>
- </row>
- <row>
- <entry><constant>TOO_LESS</constant></entry>
- <entry>
- Too less words, minimum '%min%' are expected but '%count%' were counted
- </entry>
- </row>
- <row>
- <entry><constant>NOT_FOUND</constant></entry>
- <entry>The file '%value%' could not be found</entry>
- </row>
- <row>
- <entry>Float</entry>
- <entry><constant>NOT_FLOAT</constant></entry>
- <entry>'%value%' does not appear to be a float</entry>
- </row>
- <row>
- <entry>GreaterThan</entry>
- <entry><constant>NOT_GREATER</constant></entry>
- <entry>'%value%' is not greater than '%min%'</entry>
- </row>
- <row>
- <entry>Hex</entry>
- <entry><constant>NOT_HEX</constant></entry>
- <entry>'%value%' has not only hexadecimal digit characters</entry>
- </row>
- <row>
- <entry morerows="7" valign="middle">Hostname</entry>
- <entry><constant>IP_ADDRESS_NOT_ALLOWED</constant></entry>
- <entry>
- '%value%' appears to be an IP address, but IP addresses are not allowed
- </entry>
- </row>
- <row>
- <entry><constant>UNKNOWN_TLD</constant></entry>
- <entry>
- '%value%' appears to be a <acronym>DNS</acronym> hostname but cannot match <acronym>TLD</acronym> against known
- list
- </entry>
- </row>
- <row>
- <entry><constant>INVALID_DASH</constant></entry>
- <entry>
- '%value%' appears to be a <acronym>DNS</acronym> hostname but contains a dash (-) in an invalid
- position
- </entry>
- </row>
- <row>
- <entry><constant>INVALID_HOSTNAME_SCHEMA</constant></entry>
- <entry>
- '%value%' appears to be a <acronym>DNS</acronym> hostname but cannot match against hostname
- schema for <acronym>TLD</acronym> '%tld%'
- </entry>
- </row>
- <row>
- <entry><constant>UNDECIPHERABLE_TLD</constant></entry>
- <entry>
- '%value%' appears to be a <acronym>DNS</acronym> hostname but cannot extract <acronym>TLD</acronym> part
- </entry>
- </row>
- <row>
- <entry><constant>INVALID_HOSTNAME</constant></entry>
- <entry>
- '%value%' does not match the expected structure for a <acronym>DNS</acronym> hostname
- </entry>
- </row>
- <row>
- <entry><constant>INVALID_LOCAL_NAME</constant></entry>
- <entry>'%value%' does not appear to be a valid local network name</entry>
- </row>
- <row>
- <entry><constant>LOCAL_NAME_NOT_ALLOWED</constant></entry>
- <entry>
- '%value%' appears to be a local network name but local network names are not
- allowed
- </entry>
- </row>
- <row>
- <entry morerows="2" valign="middle">Iban</entry>
- <entry><constant>NOTSUPPORTED</constant></entry>
- <entry>'%value%' does not have <acronym>IBAN</acronym></entry>
- </row>
- <row>
- <entry><constant>FALSEFORMAT</constant></entry>
- <entry>'%value%' has a false format</entry>
- </row>
- <row>
- <entry><constant>CHECKFAILED</constant></entry>
- <entry>'%value%' has failed the <acronym>IBAN</acronym> check</entry>
- </row>
- <row>
- <entry morerows="1" valign="middle">Identical</entry>
- <entry><constant>NOT_SAME</constant></entry>
- <entry>The token '%token%' does not match the given token '%value%'</entry>
- </row>
- <row>
- <entry><constant>MISSING_TOKEN</constant></entry>
- <entry>No token was provided to match against</entry>
- </row>
- <row>
- <entry>InArray</entry>
- <entry><constant>NOT_IN_ARRAY</constant></entry>
- <entry>'%value%' was not found in the haystack</entry>
- </row>
- <row>
- <entry>Int</entry>
- <entry><constant>NOT_INT</constant></entry>
- <entry>'%value%' does not appear to be an integer</entry>
- </row>
- <row>
- <entry>Ip</entry>
- <entry><constant>NOT_IP_ADDRESS</constant></entry>
- <entry>'%value%' does not appear to be a valid IP address</entry>
- </row>
- <row>
- <entry>LessThan</entry>
- <entry><constant>NOT_LESS</constant></entry>
- <entry>'%value%' is not less than '%max%'</entry>
- </row>
- <row>
- <entry>NotEmpty</entry>
- <entry><constant>IS_EMPTY</constant></entry>
- <entry>Value is required and can't be empty</entry>
- </row>
- <row>
- <entry>Regex</entry>
- <entry><constant>NOT_MATCH</constant></entry>
- <entry>'%value%' does not match against pattern '%pattern%'</entry>
- </row>
- <row>
- <entry morerows="1" valign="middle">StringLength</entry>
- <entry><constant>TOO_SHORT</constant></entry>
- <entry>'%value%' is less than %min% characters long</entry>
- </row>
- <row>
- <entry><constant>TOO_LONG</constant></entry>
- <entry>'%value%' is greater than %max% characters long</entry>
- </row>
- </tbody>
- </tgroup>
- </table>
- <para>
- Il est possible de récupérer tous les messages d'erreurs d'un validator grâce à sa méthode
- <methodname>getMessageTemplates()</methodname>. Celle-ci retourne un tableau.
- </para>
- <programlisting language="php"><![CDATA[
- $validator = new Zend_Validate_Alnum();
- $messages = $validator->getMessageTemplates();
- ]]></programlisting>
- <sect2 id="zend.validate.messages.limitation">
- <title>Limiter la taille d'un message de validation</title>
- <para>
- Il peut être nécessaire parfois de limiter la taille en caractères des messages d'erreur
- retournés. par exemple si une vue n'autorise que 100 caractères par ligne.
- <classname>Zend_Validate</classname> propose une telle option.
- </para>
- <para>
- La taille actuelle est
- <methodname>Zend_Validate::getMessageLength()</methodname>. -1 signifie que le message ne
- sera pas tronqué et entièrement retourné, c'est le comportement par défaut.
- </para>
- <para>
- Pour limiter la taille, utilisez
- <methodname>Zend_Validate::setMessageLength()</methodname>. Lorsque la taille excède cette valeur,
- le message sera alors tronqué et suivi de '<emphasis>...</emphasis>'.
- </para>
- <programlisting language="php"><![CDATA[
- Zend_Validate::setMessageLength(100);
- ]]></programlisting>
- <note>
- <para>
- Notez que la taille des messages affecte aussi les messages personnalisés enregistrés,
- si le validateur considéré étend <classname>Zend_Validate_Abstract</classname>.
- </para>
- </note>
- </sect2>
- </sect1>
- <!--
- vim:se ts=4 sw=4 et:
- -->
|