Добавление данных в БД через кнопку

253
03 октября 2017, 06:55

Как сделать чтобы введенные данные в поля input при нажатии на кнопку Add добавились в таблицу?

<?php
require "app_config.php"; 
header ('Content-Type:text/html; charset=utf-8');
mysql_connect($database_host, $username, $password, $database_name)
or die("<p>Ошибка подключения к базе данных: " . mysql_error() . "</p>");
echo "<p>Вы подключились к MySQL!</p>";
mysql_select_db($database_name)
or die("<p>Ошибка при выборе базы данных {$database_name}: " . mysql_error() . "</p>");
echo "<p>Вы подключены к MySQL с использованием базы данных {$database_name}.</p>";
$result = mysql_query("SHOW TABLES;");
if (!$result)
{
die("<p>Ошибка при выводе перечня таблиц: " . mysql_error() ."</p>");
}
echo "<p>Таблицы, имеющиеся в базе данных:</p>";
echo "<ul>";
while ($row = mysql_fetch_row($result)) 
{
echo "<li>Таблица: {$row[0]}</li>";
}
echo "</ul>";
?>

<?php
require "connect.php";
$sql_select = "SELECT * FROM Ships";
$result = mysql_query($sql_select);
echo '<table border=0>';
echo '<tr><td>Ship</td><td>Name</td><td>Captain</td><td>Type</td><td>Cargo</td><td>Build</td><td>Photo</td></tr>';
while($row = mysql_fetch_assoc($result)) 
{
echo '<tr><td>'.$row['ship_id'].'</td><td>'.$row['name'].'</td><td>'.$row['captain_name'].'</td><td>'.$row['ship_type'].'</td><td>'.$row['cargo'].'</td><td>'.$row['build_year'].'</td><td>'.$row['photo'].'</td></tr>';
}
echo '</table>';
?>

<?php
header('Content-Type: text/html; charset-utf-8');
require "app_config.php";
require "index0.php";
$name = $_POST['name'];
$captain_name = $_POST['captain_name'];
$ship_type = $_POST['ship_type'];
$cargo = $_POST['cargo'];
$build_year = $_POST['build_year'];
$photo = $_POST['photo'];
$insert_sql = "INSERT INTO Ships (ship_id, name, captain_name, ship_type, cargo, build_year, photo) VALUES ('$ship_id', '$name', '$captain_name', '$ship_type', '$cargo', '$build_year', '$photo')";
$res=mysql_query($insert_sql);
if ($res) {
        echo "<p>Данные успешно добавлены в таблицу.</p>";
    } else {
        echo "<p>Произошла ошибка.</p>";
    }

echo
'<form name="q" action="add_data.php" method="post">
<br> <hr> <br>
Name: <input name="name" type="text"> <br><br>
Captain name: <input name="captain_name" type="text"> <br><br>
Ship type: <br><br>
<input name="ship_type" type="radio" value="GP"> GP <br>
<input name="ship_type" type="radio" value="MR"> MR <br>
<input name="ship_type" type="radio" value="LR1"> LR1 <br>
<input name="ship_type" type="radio" value="LR2"> LR2 <br>
<input name="ship_type" type="radio" value="VLCC"> VLCC <br><br>
Cargo: <input name="cargo" type="number" min="16500" max="160000"> <br><br>
Build year: <input name="build_year" type="date"> <br><br>
Photo: <input name="photo" type="file"> <br><br>
<input name="add" type="submit" value="Add"> <br><br>
</form>';
?>
Answer 1

Для того чтобы выполнять запрос в базу данных, вы сперва должны к ней подключиться с помощью mysql_connect. Да и функции mysql_ помечены как устаревшие, пользуйтесь mysqli_ функциями. Здесь вы можете посмотреть пример использования

READ ALSO
PHP - fpdf, cell переносится на новую страницу

PHP - fpdf, cell переносится на новую страницу

Вот такой простой код выводит прямоугольник на вторую страницу, хотя должен просто рисовать его на первойЭкспериментально выяснил, что если...

244
Макрос codelobster или хоткей

Макрос codelobster или хоткей

Существует редактор кода codelobsterНужно, чтобы по нажатию клавиши писался целый блок кода

241
Изменить текст кнопки Add to cart woocommerce

Изменить текст кнопки Add to cart woocommerce

Вставил такой код на странице продукта чтобы появилась кнопка Add to cart:

312
Рутинг в скрипте - PHP

Рутинг в скрипте - PHP

Подскажите, как можно зарутиться при исполнении команды? В консоли я пишу sudo -i, потом пароль и всё, но мне нужно запустить скрипт из PHP

220