мегакод
Найдено: 1 запись
humour →
Зачетный аутсорсинг PHP проекта
Достался один проектик, написанный румынскими аутсорсерами для немцев.
В следующей процедуре румыны проверяют, дал ли пользователь допустимое имя таблице для MySQL (имя вводится в форму, по нему создается таблица):
Что делает этот кусочек кода? Определяет, есть ли в строке пробел. Для этого румынские умельцы определяют длину строки, удаляют из строки все пробелы, снова определяют длину и сравнивают два значения:
if( strlen( $pName ) != strlen( str_replace(" ", "", $pName) ) )
{//contains spaces
$isName = false;
}
Но этого им показалось мало. Далее в той же процедуре они проверяют всю строку на цифра/буква/подчеркивание:
for ($i=0 ; ($i < strlen($pName)) && ($isName) ; $i++ )
{
if( !( ctype_alpha( $pName[$i] ) ||
ctype_digit( $pName[$i] ) ||
( $pName[$i] == '_' ) ) )
{
$isName = false;
}
}
И не менее удачное сравнение строки с образцом, тот же проект:
if ((strtolower($fmultipledownload) != strtolower("YES")) &&
(strtolower($fmultipledownload) != strtolower("NO")) )
{
// some stuff here
В следующей процедуре румыны проверяют, дал ли пользователь допустимое имя таблице для MySQL (имя вводится в форму, по нему создается таблица):
Что делает этот кусочек кода? Определяет, есть ли в строке пробел. Для этого румынские умельцы определяют длину строки, удаляют из строки все пробелы, снова определяют длину и сравнивают два значения:
if( strlen( $pName ) != strlen( str_replace(" ", "", $pName) ) )
{//contains spaces
$isName = false;
}
Но этого им показалось мало. Далее в той же процедуре они проверяют всю строку на цифра/буква/подчеркивание:
for ($i=0 ; ($i < strlen($pName)) && ($isName) ; $i++ )
{
if( !( ctype_alpha( $pName[$i] ) ||
ctype_digit( $pName[$i] ) ||
( $pName[$i] == '_' ) ) )
{
$isName = false;
}
}
И не менее удачное сравнение строки с образцом, тот же проект:
if ((strtolower($fmultipledownload) != strtolower("YES")) &&
(strtolower($fmultipledownload) != strtolower("NO")) )
{
// some stuff here
14.04.2008 17:54+0400