2014-01-13 3 views
0

Хотя я как бы специалист по perl, я понятия не имею о проверке? Вот мой вопрос?Как исправить проверку на perl?

<form method="post" action="/~it.jasonc/cgi-bin/user.pl"> 
    <tr><td>Name:</td><td><input type="text" name="name"></td></tr> 
    <tr><td>Address:</td><td><input type="text" name="address"></td></tr> 
    <tr><td>Street:</td><td><input type="text" name="street"></td></tr> 
    <tr><td>City:</td><td><input type="text" name="city"></td></tr> 
    <tr><td>Town:</td><td><input type="text" name="town"></td></tr> 
    <tr><td>County:</td><td><input type="text" name="county"></td></tr><br> 
    <tr><td>Email:</td><td><input type="text" name="email"></td></tr><br> 
    <tr><td>Holiday Season:</td><td><select name="hol"> 
    <tr><td colspan="2"><input type="submit" value="Continue"></td></tr></table></body> 
    </html> 

Мой вопрос: Каждый раз, когда я иду на моей веб-странице и нажмите Продолжить без ввода информации, он говорит: «Неверное имя, введите имя», то отлично. Когда я вхожу в имя и нажимаю продолжить, он все еще говорит «Недействительное имя, пожалуйста, введите имя»?

Другие сообщения об ошибках не отображаются, кроме имени? У меня есть все сообщения о проверке и ошибке в файле .pl?

Это код, который я использую для проверки?

&trim ($name); 
if (($name eq "") || (($name =~ tr/ //) < 1)) { 
    print "<p><font color=\"#ff0000\">Invalid Name, Please enter a valid name.</font>"; 
    &back; 
} 
else { 
    print "<p><b>Order Details<b>\n"; 
    print "<p>Name: $name\n"; 
} 

В моем .pl-файле есть то, что я использую (на данный момент я использую имя)?

+1

Как мы должны знать? Мы не можем видеть код, который вы используете для выполнения этой проверки. – Quentin

+1

Пожалуйста, [научитесь любить ярлыки] (http://www.456bereastreet.com/archive/200711/use_the_label_element_to_make_your_html_forms_accessible/) и не используйте таблицы для [layout] (https://www.google.co.uk/search ? д = CSS + форма). – Quentin

+0

Я обновил свой вопрос Квентин? – Jason

ответ

0

Ваш HTML-код недействителен. Вы не можете иметь элемент <form> как родительский элемент <tr>. Форма может быть полностью выполнена в ячейке таблицы или целиком вокруг всей таблицы. Вы не можете обернуть форму вокруг части таблицы. При попытке восстановления после этой ошибки браузеры часто нарушают формы.

Проверьте свой HTML с помощью markup validator. (Изменить: Исправлена ​​ссылка с предыдущей ошибки копирования/вставки)

+0

Подтверждение проверки просто дает мне ошибки, потому что он считает, что .pl-файл является .html-файлом ?? – Jason

+0

Вам нужно проверить свой HTML, а не свой Perl. – Quentin

+0

Я узнал, что было не так в конце, Большое спасибо – Jason

0

Завершите сначала тег form. Использование label вместо table tag

Смежные вопросы