Для начала MySQL
<?php
# данные для подключения
$serverMySQL="localhost"; # имя сервера
$db="db"; # база данных
$dblog="root"; # логин
$dbpass=""; # пароль
$table="news"; # наша таблица
function db_connect($serverMySQL,$dblog,$dbpass)
{
$r=mysql_connect($serverMySQL,$dblog,$dbpass);
return $r;
}
db_connect($serverMySQL,$dblog,$dbpass);
mysql_set_charset('utf8'); # кодировка
mysql_select_db($db); # выбираем нашу базу данных
?>Вывод записи, записей
<?php
# выводим запись под номером 3
$sql=mysql_query("select * from `$table` where `id`='3'");
/*
символ '*' указывает, что нужно выбрать все столбцы
если Вам нужен один или несколько столбцов, укажите какие
это сократит нагрузку на MySQL и время вывода информации
например, нам нужны только заголовок и текст
*/
$sql=mysql_query("select `title`,`text` from `$table` where `id`='3'");
$result=mysql_fetch_array($sql);
# выводим результат
print "$result[title] | $result[text]";
/* выводим несколько записей, первые четыре
вы можете указать сортировку
для этого в запрос добавляем order by
мы сделаем сортировку по столбцу pre (просмотры)
order by `pre` desc <-- от большего к меньшему (если буквы от Я-А)
order by `pre` asc <-- от меньшего к большему (если буквы от А-Я)
*/
$sql=mysql_query("select * from `$table` order by `pre` desc limit 0,4");
# цикл вывода
while($result=mysql_fetch_array($sql)):
print "$result[title] | $result[text] | $result[pre]<br>";
endwhile;
# если убрать условие limit 0,4 будут выведены все записи
?>Добавление новой записи<?php
# добавляем новую запись простым запросом с указанием нужных нам значений
mysql_query("insert into `$table` set `title`='Заголовок 6', `text`='Текст 6', `pre`='0'");
# после чего в нашей таблице появится еще одна строка с id равным 6
/* немного не по теме
иногда нужно узнать идентификатор последней вставленной строки
для этого существует функция mysql_insert_id();
назначаем переменную
*/
$wwid=mysql_insert_id(); # таким образом $wwid будет равна 6
?>Обновление, редактирование записи<?php
/* давайте изменим заголовок и количество
просмотров у нашей последней записи
простой запрос, похожий на insert
*/
mysql_query("update `$table` set `title`='Заголовок 7', `pre`='114' where `id`='6'");
/* параметр where `id`='6' указывает что нужно изменить строку
под номером шесть.
Если опустить этот параметр заголовок и просмотры будут изменены у всех статей
вместо where `id`='6' можно использовать что-то другое
например изменить заголовок у статей с pre=0
будет where `pre`='0'
*/
mysql_query("update `$table` set `title`='Заголовок 7' where `pre`='0'");
# в запрос можно добавить limit 1
mysql_query("update `$table` set `title`='Заголовок 7' where `pre`='0' limit 1");
# в данном случае будет изменена первая строка в таблице, у которой pre будет равен 0
?>Удаление записи<?php
# удаляем запись под номером 6
mysql_query("delete from `$table` where `id`='6'");
/* как и в предыдущем примере
мы можем использовать что-то другое в условии where
также к запросу мы можем добавлять limit
*/
# очищаем всю таблицу
mysql_query("truncate `$table`");
?>Теперь MySQLi
<?php
// данные для подключения
$serverMySQL="localhost"; # имя сервера
$db="db"; # база данных
$dblog="root"; # логин
$dbpass=""; # пароль
$table="news"; # наша таблица
$mi=new mysqli($serverMySQL, $dblog, $dbpass, $db);
$mi->set_charset("utf8"); # кодировка
if($mi->connect_errno):
die($mi->connect_error);
endif;
?>Вывод записи, записей
<?php
# выводим запись под номером 3
$sql=$mi->query("select * from `$table` where `id`='3'");
/*
символ '*' указывает, что нужно выбрать все столбцы
если Вам нужен один или несколько столбцов, укажите какие
это сократит нагрузку на MySQL и время вывода информации
например, нам нужны только заголовок и текст
*/
$sql=$mi->query("select `title`,`text` from `$table` where `id`='3'");
$result=$sql->fetch_array();
# выводим результат
print "$result[title] | $result[text]";
/* выводим несколько записей, первые четыре
вы можете указать сортировку
для этого в запрос добавляем order by
мы сделаем сортировку по столбцу pre (просмотры)
order by `pre` desc <-- от большего к меньшему (если буквы от Я-А)
order by `pre` asc <-- от меньшего к большему (если буквы от А-Я)
*/
$sql=$mi->query("select * from `$table` order by `pre` desc limit 0,4");
# цикл вывода
while($result=$sql->fetch_array()):
print "$result[title] | $result[text] | $result[pre]<br>";
endwhile;
# если убрать условие limit 0,4 будут выведены все записи
?>Добавление новой записи
<?php
# добавляем новую запись простым запросом с указанием нужных нам значений
$mi->query("insert into `$table` set `title`='Заголовок 6', `text`='Текст 6', `pre`='0'");
# после чего в нашей таблице появится еще одна строка с id равным 6
/* немного не по теме
иногда нужно узнать идентификатор последней вставленной строки
для этого существует функция mysqli_insert_id;
назначаем переменную
*/
$wwid=$mi->insert_id; # таким образом $wwid будет равна 6
?>Обновление, редактирование записи
<?php
/* давайте изменим заголовок и количество
просмотров у нашей последней записи
простой запрос, похожий на insert
*/
$mi->query("update `$table` set `title`='Заголовок 7', `pre`='114' where `id`='6'");
/* параметр where `id`='6' указывает что нужно изменить строку
под номером шесть.
Если опустить этот параметр заголовок и просмотры будут изменены у всех статей
вместо where `id`='6' можно использовать что-то другое
например изменить заголовок у статей с pre=0
будет where `pre`='0'
*/
$mi->query("update `$table` set `title`='Заголовок 7' where `pre`='0'");
# в запрос можно добавить limit 1
$mi->query("update `$table` set `title`='Заголовок 7' where `pre`='0' limit 1");
# в данном случае будет изменена первая строка в таблице, у которой pre будет равен 0
?>Удаление записи
<?php
# удаляем запись под номером 6
$mi->query("delete from `$table` where `id`='6'");
/* как и в предыдущем примере
мы можем использовать что-то другое в условии where
также к запросу мы можем добавлять limit
*/
# очищаем всю таблицу
$mi->query("truncate `$table`");
?>