создание и продвижение сайта (вбиваю в ТОП-10, как гвозди)Настройка и сопровождение платной рекламы яндекс.директ

Запись, ее вывод, вывод нескольких записей, добавление новой, обновление и удаление записи из таблицы базы данных MySQL (MySQLi)

Таблица

MySQL

<?#данные для подключения

$server="localhost";#сервер

$db="db";#база

$dblog="root";#логин

$dbpass="xxx";#пароль

$table="tablo";#таблица

function db_connect($server,$dblog,$dbpass)

{$r=mysql_connect($server,$dblog,$dbpass);

return $r;}

db_connect($server,$dblog,$dbpass);

mysql_set_charset('utf8');#кодировка

mysql_select_db($db);#выбираем базу

?>

Вывод записи, записей

<?#выводим запись 3

$sql=mysql_query("select*from `$table` where `id`='3'");

/*символ * указывает, что нужно выбрать все столбцы. Если нужен 1 или несколько столбцов, укажите, какие, это сократит нагрузку на MySQL и время вывода информации. Например, нужны только заголовок и текст*/

$sql=mysql_query("select `title`,`text` from `$table` where `id`='3'");

$result=mysql_fetch_array($sql);

#выводим результат

print"$result[title]|$result[text]";

/*выводим несколько записей (1-е 4). Можно указать сортировку. Для этого в запрос добавляется order by. Делается сортировка по столбцу pre order by `pre` desc < - от большего к меньшему (Я-А) order by `pre` asc < - от меньшего к большему (А-Я)*/

$sql=mysql_query("select*from `$table` order by `pre` desc limit 4");

#цикл вывода

while($result=mysql_fetch_array($sql)):print"$result[title]|$result[text]|$result[pre]";endwhile;

#если убрать условие "limit 4" будут выведены все записи

?>

Добавление новой записи

<?#добавляется новая запись простым запросом с указанием нужных значений

mysql_query("insert into `$table` set `title`='Заголовок 6', `text`='Текст 6', `pre`='0'");

#в таблице появится еще 1 строка с id 6

/*иногда нужно знать идентификатор последней вставленной строки для этого существует функция mysql_insert_id() (назначаем переменную)*/

$wwid=mysql_insert_id();#$wwid будет 6

?>

Обновление, редактирование записи

<?/*изменение заголовка и количества просмотров у последней записи (простой запрос, похожий на insert)*/

mysql_query("update `$table` set `title`='Заголовок 7', `pre`='114' where `id`='6'");

/*параметр where `id`='6' указывает, что нужно изменить строку 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");

#будет изменена 1-я строка в таблице, у которой pre будет равен 0

?>

Удаление записи

<?#удаление записи 6

mysql_query("delete from `$table` where `id`='6'");

/*можно использовать что-то другое в условии where, также к запросу можно добавить limit*/

#очищение всей таблицы

mysql_query("truncate `$table`")?>

MySQLi

<?//данные для подключения

$server="localhost";#имя сервера

$db="db";#база

$dblog="root";#логин

$dbpass="";#пароль

$table="tablo";#таблица

$mi=new mysqli($server,$dblog,$dbpass,$db);

$mi->set_charset("utf8");#кодировка

if($mi->connect_errno):

die($mi->connect_error);

endif?>

Вывод записи, записей

<?#выводится запись 3

$sql=$mi->query("select*from `$table` where `id`='3'");

/*символ * указывает, что нужно выбрать все столбцы. Если нужен 1 или несколько столбцов, укажите, какие, это сократит нагрузку на MySQL и время вывода информации. Например, нужны только заголовок и текст*/

$sql=$mi->query("select `title`,`text` from `$table` where `id`='3'");

$result=$sql->fetch_array();

#вывод результата

print"$result[title]|$result[text]";

/*выводится несколько записей (1-е 4). Можно указать сортировку. Для этого в запрос добавляется order by. Делается сортировка по столбцу pre order by `pre` desc < - от большего к меньшему (Я-А) order by `pre` asc < - от меньшего к большему (А-Я)*/

$sql=$mi->query("select*from `$table` order by `pre` desc limit 4");

#цикл вывода

while($result=$sql->fetch_array()):

print"$result[title]|$result[text]|$result[pre]";

endwhile;

#если убрать условие "limit 4" будут выведены все записи

?>

Добавление новой записи

<?#добавляется новая запись простым запросом с указанием нужных значений

$mi->query("insert into `$table` set `title`='Заголовок 6', `text`='Текст 6', `pre`='0'");

#после чего в таблице появится еще 1 строка с id = 6

/*иногда нужно знать идентификатор последней вставленной строки, для этого существует функция mysqli_insert_id; назначение переменной*/

$wwid=$mi->insert_id;#таким образом $wwid = 6

?>

Обновление, редактирование записи

<?/*изменение заголовка и количества просмотров у последней записи (простой запрос, похожий на insert)*/

$mi->query("update `$table` set `title`='Заголовок 7', `pre`='114' where `id`='6'");

/*параметр where `id`='6' указывает, что нужно изменить строку 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");

#в данном случае будет изменена 1-я строка в таблице, у которой pre будет равен 0

?>

Удаление записи

<?#удаление записи 6

$mi->query("delete from `$table` where `id`='6'");

/*Можно использовать что-то другое. В условии where к запросу можно добавить limit*/

#очищение всей таблицы

$mi->query("truncate `$table`")?>

Отвечу на любые вопросы. С уважением, Дмитрий Владимирович.

Ваше письмо×
Free Web Hosting