#php #mysql
#php #mysql
Вопрос:
Эй, ребята, я новичок в разработке php, и я видел код, подобный
$link = mysql_connect('localhost', 'root', 'root');
if ($link) {
die('cannot connect:'.mysql_error());
}
mysql_select_db("chat", $link);
if ($SERVER['REQUEST_METHOD'] == 'POST') {
$message = $_POST['message'];
mysql_query("INSERT INTO posts (message) VALUES ('$message')");
}
$query = mysql_query('SELECT * FROM posts ORDER BY id DESC');
enter code here
while ($row = mysql_fetch_object($query)) {
$posts[] = array(
'message' => $row -> message
);
}
Я в замешательстве от того, что $row->message
означает?? .. это то же самое, что $row['message']
..
Надеюсь, вы, ребята, сможете помочь, спасибо
Комментарии:
1. Его сохранение
message
как свойства строки. То же самое, что сказать$this->message = "HELLO"
и затем[object] $thing = new ObjectName(); return $thing->message;
2. @TJB4rn3s извините, я перередактировал свой qus .. он действует как ключ..
3. @TJB4rn3s на самом деле означает $row-> message выборку столбца или выборку переменной $message?
4. Вы извлекаете результаты как объект. Если вы используете mysqli_fetch_array($query), результаты будут получены в виде массива. Таким образом, вместо доступа к результатам типа $row[«arrayKey»] вы получаете доступ к значению «message» из базы данных как к свойству строки … таким образом, $row-> message (именно так вы получаете доступ к свойствам объектов в PHP)
5. @TJB4rn3s итак, $row[‘message’] совпадает с $row-> сообщение??
Ответ №1:
Вы можете получить результат mysql_query с информацией о массиве / объекте
Для массива вы можете использовать mysql_fetch_array(); http://www.php.net/manual/en/function.mysql-fetch-array.php
Для объектов вы можете использовать mysql_fetch_object(); http://www.php.net/manual/en/function.mysql-fetch-object.php
Кроме того, mysql теперь удален из PHP. Таким образом, вы можете использовать PDO / Mysqli