Найти в Дзене
Мухамат Газизов

Как подключить MySql базу данных к своему сайту на XAMPP

Был хороший сайт Анны Котельниковой .Были там замечательные статьи о том как создавать базу данных , как добавлять информацию в базу , как изменить информацию через свой сайт итд. К сожалению что-то там изменилось и теперь ссылки ведут на какой-то другой сайт. У меня сохранились эти программы адаптированные на Mysqli. В первую очередь создаём базу данных на phpMyadmin и назовём new_db. Там создаём таблицу из 5 столбцов и назовём users . Столбцы назовём : 1) id,(int ,auto increment) 2)first_name, 3)last_name, 4)email, 5)facebook Задаём пароль (в данном случае 12345). Вносим данные первого пользователя с правами администратора (в данном примере Anna Kotelnikova). В папке htdocs(xampp) создаём папку db1. В этой папке создаём ещё одну папку и назовём scripts , туда помещаем файлы : connect.php , form.php, update.php . Остальные файлы все в папке db1 . Вот работающие на XAMPP коды . <?php
$con = mysqli_connect("localhost","anna","12345","new_db");
// Check connection
if (m
Оглавление

Был хороший сайт Анны Котельниковой .Были там замечательные статьи

о том как создавать базу данных , как добавлять информацию в базу , как изменить информацию через свой сайт итд.

К сожалению что-то там изменилось и теперь ссылки ведут на какой-то другой сайт.

У меня сохранились эти программы адаптированные на Mysqli.

В первую очередь создаём базу данных на phpMyadmin и назовём new_db.

Там создаём таблицу из 5 столбцов и назовём users .

Столбцы назовём :

1) id,(int ,auto increment)

2)first_name,

3)last_name,

4)email,

5)facebook

Задаём пароль (в данном случае 12345). Вносим данные первого пользователя с правами администратора (в данном примере Anna Kotelnikova).

В папке htdocs(xampp) создаём папку db1. В этой папке создаём ещё одну папку

и назовём scripts , туда помещаем файлы : connect.php , form.php, update.php .

Остальные файлы все в папке db1 .

Вот работающие на XAMPP коды .

connect.php :

<?php
$con = mysqli_connect("localhost","anna","12345","new_db");

// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
exit();

}
?>

form.php:

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    <title>Untitled Document</title>
    </head>
    <body>
    <?php
    require 'connect.php';
    $first_name = trim($_REQUEST['first_name']);
    $last_name = trim($_REQUEST['last_name']);
    $email = trim($_REQUEST['email']);
    $facebook = trim($_REQUEST['facebook']);

    $position = true;
    if(preg_match("/^http:\/\/www.facebook.com\//", $facebook))
    {$position = false;}
    else if(preg_match("/^www.facebook.com\//", $facebook))
    {$position = false;
    $facebook = "http://" . $facebook;}
    else if($position)
    {$facebook = "http://www.facebook.com/" . $facebook;}


    $insert_sql = "INSERT INTO users (first_name, last_name, email, facebook)" .
    "VALUES('{$first_name}', '{$last_name}', '{$email}', '{$facebook}');";
    mysqli_query($con,$insert_sql);
    echo "<p>Новая запись вставлена в базу!</p>";
    ?>
    </body>
    </html>

select_user.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>

<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="style.css">
<title>Selected User</title>
</head>

<body>

<?php
require 'scripts/connect.php';
$first_name = trim($_REQUEST['first_name']);
$last_name = trim($_REQUEST['last_name']);

$sql_select = "SELECT * FROM users WHERE first_name='$first_name' && last_name='$last_name'";
$result = mysqli_query($con,$sql_select);
$row = mysqli_fetch_array($result);

if($row)
{


printf("<p>Пользователь: " .$row['first_name'] . " " .$row['last_name'] ."</p>
<p><i>Контактные данные </i>:</p><p>E-mail: " .$row['email'] . "</p><p>Facebook: " .$row['facebook'] . "</p>-------------------------------------------------------<br/>"
);
}
else{echo ("Пользователя с таким именем в базе нет<br/><br/>");}
?>


<a href="search_user.html">Вернуться к поиску</a><br/><br/>
<a href="info_form.html">Добавить пользователя</a></br>
<a href="select_change.php">Редактировать запись базы данных</a><br/>
</body>
</html>

edit.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="style.css">
<title>Вносим изменеиния</title>
</head>
<body>
<?php
require 'scripts/connect.php';
$id = $_REQUEST['user'];
$select_sql = "SELECT * FROM users WHERE id= $id";
$result = mysqli_query($con,$select_sql);
$row = mysqli_fetch_array($result);
printf("<form action='scripts/update.php' method='post' name='forma'>
<fieldset>
<input type='hidden' name='id' value='%s'><br/>
<label for='first_name'>Имя:</label><br/>
<input type='text' name='first_name' size='30' value='%s'><br/>
<label for='last_name'>Фамилия:</label><br/>
<input type='text' name='last_name' size='30' value='%s'><br/>
<label for='email'>Email:</label><br/>
<input type='text' name='email' size='30' value='%s'><br/>
<label for='facebook'>Facebook</label><br/>
<input name='facebook' type='text' size='30' value='%s'>
</fieldset>
<br/>
<fieldset>
<input id='submit' type='submit' value='Редактировать запись'><br/>
</fieldset>
</form>",$row['id'], $row['first_name'], $row['last_name'], $row['email'], $row['facebook']);
?>

<a href="info_form.html">Добавить пользователя</a><br/><br/>
<a href="search_user.html">Вернуться к поиску</a><br/><br/>
<a href="select_change.php">Вернуться к выбору записей для редактирования</a><br/><br/>
</body>
</html>

all-users.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset=utf-8">
<link rel="stylesheet" type="text/css" href="style.css">
<title>Selected User</title>
</head>
<body>
<?php
require 'scripts/connect.php';
$sql_select = "SELECT * FROM users";
$result = mysqli_query($con,$sql_select);
$row = mysqli_fetch_array($result);
do
{
printf("<p>Пользователь: " .$row['first_name'] . " " .$row['last_name'] ."</p>
<p><i>Контактные данные</i></p><p>E-mail: " .$row['email'] . "</p><p>Facebook: " .$row['facebook'] . "</p>---------<br/>"
);
}
while($row = mysqli_fetch_array($result));
?>
<a href="search_user.html">Вернуться к поиску</a><br/><br/>
<a href="info_form.html">Добавить пользователя</a>
</body>
</html>

select_change.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="style.css" type="text/css">
<title>Выбор пользователя для редактирования.</title>
</head>
<body>
<form action="edit.php" method="post">
<fieldset>
<?php
require 'scripts/connect.php';
$select_sql = "SELECT id, first_name, last_name FROM users";
$result = mysqli_query($con,$select_sql);
$row = mysqli_fetch_array($result);
do
{
printf("<input type='radio' name='user' value='%s'>%s %s<br/><br/>", $row['id'], $row['first_name'], $row['last_name']);
}
while($row = mysqli_fetch_array($result))
?>
</fieldset>
<fieldset>
<input type="submit" value="Выбрать элемент">
</fieldset>
</form>
<a href="info_form.html">Добавить пользователя</a><br/><br/>
<a href="search_user.html">Вернуться к поиску</a><br/><br/>
</body>
</html>

info_form.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<link rel="stylesheet" href="style.css" type="text/css">

<title>Untitled Document</title>

</head>

<body>

<form action="scripts/form.php" method="post" name="forma">

<fieldset>

<label for="first_name">Имя:</label><br>

<input type="text" name="first_name" size="30"><br/>

<label for="last_name">Фамилия:</label><br/>

<input type="text" name="last_name" size="30"><br/>

<label for="email">Email:</label><br/>

<input type="text" name="email" size="30"><br/>

<label for="facebook">Facebook</label><br/>

<input name="facebook" type="text" value="" size="30">

</fieldset>

<br/>

<fieldset>

<input id="submit" type="submit" value="Отправить данные"><br/>

</fieldset>

</form>

<a href="search_user.html">Вернуться к поиску</a><br/><br/>

<a href="all-users.php">Добавить пользователя</a></br>

<a href="select_change.php">Редактировать запись базы данных</a><br/

</body>

</html>

search_user.html

<html>

<head>

<meta charset="utf-8">

<title>

найти пользователя

</title>

<link rel="stylesheet" href="style.css" type="text/css">

<body>

<fieldset>

<form action="select_user.php" method="post">

<label for="first_name">Имя:</label><br/>

<input type="text" name="first_name" size="30"><br/>

<label for="last_name">Фамилия:</label><br/>

<input type="text" name="last_name" size="30"><br/><br><br>

<input type="submit" value="найти">

</fieldset>

</form>

<a href="all-users.php">все пользователи</a></br>

<a href="select_change.php">Редактировать запись базы данных</a><br/

</body>

</html>

update.php

<!DOCTYPE html>

<html>

<head>

<title>update </title>

<meta charset="utf-8" />

</head>

<body>

<?php

require 'connect.php';

$id=$_REQUEST['id'];

$first_name = trim($_REQUEST['first_name']);

$last_name = trim($_REQUEST['last_name']);

$email = trim($_REQUEST['email']);

$facebook = trim($_REQUEST['facebook']);

$position = true;

if(preg_match("/^http:\/\/www.facebook.com\//", $facebook))

{$position = false;}

else if(preg_match("/^www.facebook.com\//", $facebook))

{$position = false;

$facebook = "http://" . $facebook;}

else if($position)

{$facebook = "http://www.facebook.com/" . $facebook;}

$sql = "UPDATE users SET first_name='$first_name',last_name='$last_name' , email ='$email' WHERE id=$id";

if (mysqli_query($con, $sql)) {

echo "Record updated successfully";

} else {

echo "Error updating record: " . mysqli_error($conn);

}

?>

</body>

</html>

style.css

body{width:400px; margin:0 auto; background:#F8F4B6;}

label{display: block; float: left; width: 150px;

padding: 0 10px; margin: 18px 0 0; text-align: right;}

submit{float:right; margin:5px 50px 10px 0;}

Здесь только коды которые работают на xampp .

При работе с базами данных MySql возникает проблема с кодировками ,

вместо кириллицы появляются какие то непонятные символы , как говорят кракозябры . Я это исправил таким образом : во первых везде в программах проставил кодировку utf-8 , когда создавал базу данных и таблицы -utf8_general_ci (как все рекомендуют). Но на этом ещё не всё , при просмотре таблиц через phpMyAdmin чтобы кириллица правильно отображалась включил строку на config .my.ini (убрал символ решётки ) как на этих скриншотах

На панели управления xampp нажимаем кнопку Config затем my.ini , находим раздел UTF 8 settings и убираем решётки как на скриншоте ниже .

мне кажется другие одинарные тоже можно убрать , но пока не проверял .

-2

Продолжение можете найти здесь https://zen.me/1tyZIu .

Удачи !