function parse_form ($result) {
if (strlen ($result) !== 0) {
$res = strtolower ($result);
$startPos = 0;
$fIndex = 0;
while (true) {
$fStart = strpos ($res, '<input', $startPos);
if ($fStart === false) {
break;
}
$fSym = substr ($result, $fStart + 6, 1);
if($fSym!==' ' && $fSym!=='>' && $fSym!=="\t" && $fSym!=="\n") {
$startPos = $fStart + 6;
continue;
}
else {
if ($fSym === '>') {
$startPos = $fStart + 6;
continue;
}
else {
$nextPos = $fStart + 6;
$fStartGt = strpos ($result, '>', $nextPos);
if ($fStartGt !== false) {
$tagAttrStr = trim (substr ($result, $nextPos, $fStartGt - $nextPos));
$tagAttrLen = strlen ($tagAttrStr);
if ($tagAttrLen === 0) {
$startPos = $fStartGt + 1;
continue;
}
else {
$tagAttrPos = strpos (strtolower ($tagAttrStr), 'type=');
if ($tagAttrPos !== false) {
$attrValFirstSym = substr ($tagAttrStr, $tagAttrPos + 5, 1);
if ($attrValFirstSym === '\'') {
$attrValEndPos = strpos ($tagAttrStr, '\'', $tagAttrPos + 6);
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 6, $attrValEndPos - $tagAttrPos - 6);
$fElements['input'][$fIndex]['type'] = $tagAttrValue;
}
}
else {
if ($attrValFirstSym === '"') {
$attrValEndPos = strpos ($tagAttrStr, '"', $tagAttrPos + 6);
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 6, $attrValEndPos - $tagAttrPos - 6);
$fElements['input'][$fIndex]['type'] = $tagAttrValue;
}
}
else {
$attrValEndPos = strpos ($tagAttrStr, ' ', $tagAttrPos + 6);
if ($attrValEndPos === false) {
$attrValEndPos = $tagAttrLen;
}
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 5, $attrValEndPos - $tagAttrPos - 5);
$fElements['input'][$fIndex]['type'] = $tagAttrValue;
}
}
}
}
$tagAttrPos = strpos (strtolower ($tagAttrStr), 'name=');
if ($tagAttrPos !== false) {
$attrValFirstSym = substr ($tagAttrStr, $tagAttrPos + 5, 1);
if ($attrValFirstSym === '\'') {
$attrValEndPos = strpos ($tagAttrStr, '\'', $tagAttrPos + 6);
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 6, $attrValEndPos - $tagAttrPos - 6);
$fElements['input'][$fIndex]['name'] = $tagAttrValue;
}
}
else {
if ($attrValFirstSym === '"') {
$attrValEndPos = strpos ($tagAttrStr, '"', $tagAttrPos + 6);
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 6, $attrValEndPos - $tagAttrPos - 6);
$fElements['input'][$fIndex]['name'] = $tagAttrValue;
}
}
else {
$attrValEndPos = strpos ($tagAttrStr, ' ', $tagAttrPos + 6);
if ($attrValEndPos === false) {
$attrValEndPos = $tagAttrLen;
}
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 5, $attrValEndPos - $tagAttrPos - 5);
$fElements['input'][$fIndex]['name'] = $tagAttrValue;
}
}
}
}
$tagAttrPos = strpos (strtolower ($tagAttrStr), 'value=');
if ($tagAttrPos !== false) {
$attrValFirstSym = substr ($tagAttrStr, $tagAttrPos + 6, 1);
if ($attrValFirstSym === '\'') {
$attrValEndPos = strpos ($tagAttrStr, '\'', $tagAttrPos + 7);
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 7, $attrValEndPos - $tagAttrPos - 7);
$fElements['input'][$fIndex]['value'] = $tagAttrValue;
}
}
else {
if ($attrValFirstSym === '"') {
$attrValEndPos = strpos ($tagAttrStr, '"', $tagAttrPos + 7);
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 7, $attrValEndPos - $tagAttrPos - 7);
$fElements['input'][$fIndex]['value'] = $tagAttrValue;
}
}
else {
$attrValEndPos = strpos ($tagAttrStr, ' ', $tagAttrPos + 7);
if ($attrValEndPos === false) {
$attrValEndPos = $tagAttrLen;
}
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 6, $attrValEndPos - $tagAttrPos - 6);
$fElements['input'][$fIndex]['value'] = $tagAttrValue;
}
}
}
}
$startPos = $fStartGt + 1;
++$fIndex;
continue;
}
continue;
}
break;
}
continue;
}
}
$startPos = 0;
$fIndex = 0;
while (true) {
$fStart = strpos ($res, '<textarea', $startPos);
if ($fStart === false) {
break;
}
$fSym = substr ($result, $fStart + 9, 1);
if ((((($fSym !== ' ' AND $fSym !== '>') AND $fSym !== ' ') AND $fSym !== '
') AND $fSym !== '
')) {
$startPos = $fStart + 9;
continue;
}
else {
if ($fSym === '>') {
$startPos = $fStart + 9;
continue;
}
else {
$nextPos = $fStart + 6;
$fStartGt = strpos ($result, '>', $nextPos);
if ($fStartGt !== false) {
$tagAttrStr = trim (substr ($result, $nextPos, $fStartGt - $nextPos));
$tagAttrLen = strlen ($tagAttrStr);
if ($tagAttrLen === 0) {
$startPos = $fStartGt + 1;
continue;
}
else {
$tagAttrPos = strpos (strtolower ($tagAttrStr), 'name=');
if ($tagAttrPos !== false) {
$attrValFirstSym = substr ($tagAttrStr, $tagAttrPos + 5, 1);
if ($attrValFirstSym === '\'') {
$attrValEndPos = strpos ($tagAttrStr, '\'', $tagAttrPos + 6);
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 6, $attrValEndPos - $tagAttrPos - 6);
$fElements['textarea'][$fIndex]['name'] = $tagAttrValue;
}
}
else {
if ($attrValFirstSym === '"') {
$attrValEndPos = strpos ($tagAttrStr, '"', $tagAttrPos + 6);
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 6, $attrValEndPos - $tagAttrPos - 6);
$fElements['textarea'][$fIndex]['name'] = $tagAttrValue;
}
}
else {
$attrValEndPos = strpos ($tagAttrStr, ' ', $tagAttrPos + 6);
if ($attrValEndPos === false) {
$attrValEndPos = $tagAttrLen;
}
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 5, $attrValEndPos - $tagAttrPos - 5);
$fElements['textarea'][$fIndex]['name'] = $tagAttrValue;
}
}
}
}
$startPos = $fStartGt + 1;
++$fIndex;
continue;
}
continue;
}
break;
}
continue;
}
}
$startPos = 0;
$fIndex = 0;
while (true) {
$fStart = strpos ($res, '<select', $startPos);
if ($fStart === false) {
break;
}
$fSym = substr ($result, $fStart + 7, 1);
if ((((($fSym !== ' ' AND $fSym !== '>') AND $fSym !== ' ') AND $fSym !== '
') AND $fSym !== '
')) {
$startPos = $fStart + 8;
continue;
}
else {
$nextPos = $fStart + 7;
$fStartGt = strpos ($res, '>', $nextPos);
if ($fStartGt !== false) {
$fEnd = strpos ($res, '</select', $fStartGt + 1);
if ($fEnd !== false) {
$fEndGt = strpos ($res, '>', $fEnd + 1);
if ($fEndGt === false) {
$fEndGt = strlen ($result);
}
}
else {
$fEndGt = strlen ($result);
}
$tagAttrStr = trim (substr ($result, $nextPos, $fStartGt - $nextPos));
$tagAttrLen = strlen ($tagAttrStr);
if ($tagAttrLen === 0) {
$startPos = $fEndGt;
continue;
}
else {
$tagAttrPos = strpos (strtolower ($tagAttrStr), 'name=');
if ($tagAttrPos !== false) {
$attrValFirstSym = substr ($tagAttrStr, $tagAttrPos + 5, 1);
if ($attrValFirstSym === '\'') {
$attrValEndPos = strpos ($tagAttrStr, '\'', $tagAttrPos + 6);
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 6, $attrValEndPos - $tagAttrPos - 6);
$tagAttrValue_2 = $tagAttrValue;
}
}
else {
if ($attrValFirstSym === '"') {
$attrValEndPos = strpos ($tagAttrStr, '"', $tagAttrPos + 6);
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 6, $attrValEndPos - $tagAttrPos - 6);
$tagAttrValue_2 = $tagAttrValue;
}
}
else {
$attrValEndPos = strpos ($tagAttrStr, ' ', $tagAttrPos + 6);
if ($attrValEndPos === false) {
$attrValEndPos = $tagAttrLen;
}
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 5, $attrValEndPos - $tagAttrPos - 5);
$tagAttrValue_2 = $tagAttrValue;
}
}
}
}
if (trim ($tagAttrValue_2) === '') {
$startPos = $fEndGt;
$tagAttrValue_2 = '';
continue;
}
else {
$fElements['select'][$fIndex]['name'] = $tagAttrValue;
$select = substr ($result, $fStartGt + 1, $fEnd - $fStartGt - 1);
$optionOffsetPos = 0;
$name = 0;
$optionStartPos = strpos (strtolower ($select), '<option', $optionOffsetPos);
if ($optionStartPos !== false) {
$optionStartPosGt = strpos (strtolower ($select), '>', $optionStartPos + 1);
if ($optionStartPosGt === false) {
}
$tagAttrStr = substr ($select, $optionStartPos + 7, $optionStartPosGt - $optionStartPos - 7);
$tagAttrPos = strpos (strtolower ($tagAttrStr), 'value=');
$tagAttrPos = strpos (strtolower ($tagAttrStr), 'value=');
if ($tagAttrPos !== false) {
$attrValFirstSym = substr ($tagAttrStr, $tagAttrPos + 6, 1);
if ($attrValFirstSym === '\'') {
$attrValEndPos = strpos ($tagAttrStr, '\'', $tagAttrPos + 7);
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 7, $attrValEndPos - $tagAttrPos - 7);
$optionAttrValue = $tagAttrValue;
}
}
else {
if ($attrValFirstSym === '"') {
$attrValEndPos = strpos ($tagAttrStr, '"', $tagAttrPos + 7);
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 7, $attrValEndPos - $tagAttrPos - 7);
$optionAttrValue = $tagAttrValue;
}
}
else {
$attrValEndPos = strpos ($tagAttrStr, ' ', $tagAttrPos + 7);
if ($attrValEndPos === false) {
$attrValEndPos = $tagAttrLen;
}
if ($attrValEndPos !== false) {
$tagAttrValue = substr ($tagAttrStr, $tagAttrPos + 6, $attrValEndPos - $tagAttrPos - 6);
$optionAttrValue = $tagAttrValue;
}
}
}
}
if (trim ($optionAttrValue) === '') {
$optionEndPos = strpos (strtolower ($select), '</option', $optionStartPosGt + 1);
if ($optionEndPos !== false) {
$optionEndPosGt = strpos (strtolower ($select), '<', $optionEndPos + 1);
if ($optionEndPosGt === false) {
$optionEndPosGt = $optionEndPos = strlen ($select);
}
}
else {
$optionEndPosGt = $optionEndPos = strlen ($select);
}
$optionAttrValue = substr ($select, $optionStartPosGt + 1, $optionEndPos - $optionStartPosGt - 1);
$optionOffsetPos = $optionEndPosGt;
}
else {
$optionOffsetPos = $optionStartPosGt;
}
$fElements['select'][$fIndex]['value'][$name] = $optionAttrValue;
++$name;
$optionAttrValue = '';
}
++$fIndex;
$startPos = $fEndGt;
$tagAttrValue_2 = '';
continue;
}
continue;
}
continue;
}
break;
}
}
}
else {
return false;
}
if (isset ($fElements)) {
return $fElements;
}
else {
return false;
}
}