вставить запись, используя mysqli с одной страницей - PullRequest
0 голосов
/ 04 мая 2018

Мне интересно, в чем проблема с этим кодом? Я хочу вставить запись, когда нажму кнопку «Отправить». Но, похоже, у меня проблема с функцией isset.

 Database Name: dbase

 Table Name: tblmessage

 Fields:
 message_id - INT - auto increment
 message - TEXT

Обновление: Я все еще не могу добавить / вставить запись в свою базу данных.

Заранее спасибо!

<html>
<head></head>
<body>
<form method = "post" action = "<?php echo $_SERVER['PHP_SELF']; ?>">
    Message: <input type = "text" name = "message">
    </br></br>
    <input type = "submit" name = "submit">
</form>

<?php
    if (isset($_POST['submit'])) {
       if (!empty($_POST['message'])) {

        $conn = mysqli_connect("localhost", "root", "","dbase");

        $message = $_POST['message'];

        $sql = ""INSERT INTO tblmessage (message_id, message) VALUES (NULL, '$message')";
        $insert = mysqli_query($conn,$sql);

          if ($insert) {
              echo "Message successfully added!";
          }
          else {
            echo "Error" . mysqli_error($conn);
          }
      }
    }
    mysqli_close($conn);
?>
</body>
</html>

Ответы [ 3 ]

0 голосов
/ 04 мая 2018

Рабочий код просто скопируйте и вставьте его

<html>
<head></head>
<body>
<form method = "post" action = "<?php echo $_SERVER['PHP_SELF']; ?>">
    Message: <input type = "text" name = "message">
    </br></br>
    <input type = "submit" name = "submit">
</form>

<?php
if (isset($_POST['submit'])) {
    if (!empty($_POST['message'])) {
        $conn = mysqli_connect("localhost", "root", "", "dbase");
        $message = $_POST['message'];

        $sql = "INSERT INTO tblmessage (message_id, message) VALUES (NULL, '" . $message . "')";
        $insert = mysqli_query($conn, $sql);
        mysqli_close($conn);
        if ($insert) {
            echo "Message successfully added!";
        } else {
            echo "Error" . mysqli_error($conn);
        }
    }
}
?>
</body>
</html>
0 голосов
/ 04 мая 2018

Вы пытаетесь взорвать строку. Читайте о взорваться .

Изменение:

  $sql = "INSERT INTO tblmessage (message) VALUES (NULL, ".implode(',',$message).")";
  $insert = mysqli_query($conn,$sql);

Кому:

  $sql = "INSERT INTO tblmessage (message_id, message) VALUES (NULL, '$message')";
  $insert = mysqli_query($conn,$sql);
0 голосов
/ 04 мая 2018

У вас нет кода SQL-Statement в вашем коде. Если вы хотите вставить сообщение из вашей формы, вам нужно изменить $sql.

$sql = INSERT into dbase(your_database_field) Values ($message);
$sql-statement=mysqli_query($conn, $sql);

Перед отправкой данных в базу данных вам следует санировать данные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...