Я учусь на уроках веб-сценариев, и, честно говоря, к сожалению, она заняла второе место среди моих классов по сетям, дизайну и анализу. Из-за этого я нахожу, что сталкиваюсь с проблемами, которые могут быть обыденными, но не могу легко найти решение.
Я пишу CGI-форму, которая должна работать с БД MySQL. Я могу вставлять и удалять в БД просто отлично. Моя проблема возникает при запросе БД.
Мой код компилируется нормально, и я не получаю ошибок при попытке «отобразить» информацию в БД через браузер, но данные и текст на самом деле не отображаются. Данный код здесь:
print br, 'test';
my $dbh = DBI->connect("DBI:mysql:austinc4", "*******", "*******", {RaiseError => 1} );
my $usersstatement = "select * from users";
my $projstatment = "select * from projects";
# Get the handle
my $userinfo = $dbh->query($usersstatement);
my $projinfo = $dbh->query($projstatement);
# Fetch rows
while (@userrow = $userinfo->fetchrow()) {
print $userrow[0], br;
}
print 'end';
Этот код находится в операторе if, который окружен заголовком print, start_html, form, / form, end_html. Я просто пытался отладить и выяснить, что происходит, и распечатать операторы test and end. Он распечатывает тест, но не распечатывает конец. Он также не распечатывает данные в моей БД, которые приходят до того, как я распечатаю конец.
Я верю, что я делаю:
- Подключение к моей БД
- Формирование строки, содержащей команду / запрос к БД
- Получение дескриптора для моего запроса, который я выполняю в БД
- Получение строки из моей ручки
- Печать первого поля в строке, которую я извлек из таблицы
Но я не понимаю, почему мои данные не будут распечатываться так же, как и текст в конце. Я посмотрел в БД, и на самом деле он содержит данные в БД и таблицу, из которой я пытаюсь получить данные.
Это меня озадачило, поэтому я ценю любую помощь. Еще раз спасибо. =) * * Один тысяча двадцать-шесть
Решение:
Я использовал тот, который не поддерживал модули, которые я включал. Это приводит меня к другому вопросу. Как я могу обнаружить такие ошибки? Моя программа действительно компилируется правильно, и веб-страница не "ломается". Помимо двойной проверки того, что все методы, которые я использую, являются действительными, могу ли я увидеть что-то вроде текста, не отображаемого, и предположить, что произошла ошибка, подобная этой?