Ваш код должен быть чем-то вроде этого
$username = $_POST['username'];
$password = $_POST['password'];
$query = "SELECT * FROM Users WHERE UserName LIKE '$username'";
echo $query;
$result = mysql_query($query);
if($result === FALSE) {
die(mysql_error("error message for the user"));
}
while($row = mysql_fetch_array($result))
{
echo $row['FirstName'];
}
. После этого вы получите запрос, напечатанный на экране. Попробуйте выполнить этот запрос на своем сервере и посмотрите, дает ли он желаемые результаты. В большинстве случаев ошибка содержится в запросе. Остальная часть кода верна.
Последняя строка:
blockquote>[Thu Sep 06 20:14:25 2012] [alert] [client 127.0.0.1] /opt/lampp/htdocs/.htaccess: Invalid command '\xef\xbb\xbfRewriteEngine', perhaps misspelled or defined by a module not included in the server configuration
Эти символы (
\xef\xbb\xbf
) являются порядковым номером байта юникода для UTF-8 и apache считает, что это мусорные символы (по крайней мере, по Linux). В Windows эта спецификация используется, чтобы позволить Windows знать, что файл закодирован как UTF-8, а не какой-либо текстовый файл Windows по умолчанию (я думаю, что это UTF-16, немного endian). Вам просто нужно использовать свой любимый текстовый редактор linux и удалить эти символы. В зависимости от того, какой редактор вы используете, они могут даже не отображаться, поэтому вам может понадобиться сделать что-то вроде «выберите из конца словаRewriteEngine
в начало строки и удалите выделение, затем с начала строка, просто введитеRewriteEngine
вручную.Есть вероятность, что файл htaccess не будет работать должным образом, как только вы переместите его обратно в Windows после удаления спецификации, я не уверен.