@ Магнус: Стандарт определяет sizeof как уступающий количеству байтов в объекте, а sizeof (char) всегда один.
Edit: ANSI C ++ standard section 5.3.3 Sizeof:
Оператор sizeof дает количество байтов в объекте представление его операнда. [...] sizeof (char), sizeof (signed char) и sizeof (unsigned char) равны 1; результат sizeof, примененный к любому другому фундаментальному типу, определяется реализацией.
blockquote>Раздел 1.6 Модель памяти C ++:
Фундаментальная единица хранения в C ++ модель памяти - это байт. Байт, по крайней мере, достаточно большой, чтобы содержать любой элемент базового набора символов выполнения и состоит из непрерывной последовательности бит, число которой определяется реализацией.
blockquote>
mysqli_query()
возвращает ресурс объекта в вашу переменную $result
, а не строку. Вам нужно закодировать его, а затем получить доступ к записям. Вы просто не можете напрямую использовать его как свою переменную $result
.
while ($row = $result->fetch_assoc()) {
echo $row['classtype']."<br>";
}
Убедитесь, что mysqli_connect()
создает соединение с БД. Вы можете использовать mysqli_errno()
для проверки ошибок.
Попробуйте:
$row = mysqli_fetch_assoc($result);
echo "my result <a href='data/" . $row['classtype'] . ".php'>My account</a>";
Перед использованием переменной $result
вы должны использовать функции $row = mysql_fetch_array($result)
или mysqli_fetch_assoc()
.
Нравится это:
$row = mysql_fetch_array($result);
и использовать массив $row
как вам нужно.