Форма в модале начальной загрузки не вставляет данные в MySQL - PullRequest
0 голосов
/ 11 мая 2018

Я пытаюсь вставить данные в MySQL с помощью формы в модале Bootstrap, но она не работает.

Я не знаю, почему, но мой метод формы - POST, и кажется, что это GET, потому что он печатает данные в веб-адресе.

Когда я пытаюсь вставить данные через базовую форму с тем же php-кодом (без формата, просто как ад), он вставляет данные.


Вот моя форма в модале начальной загрузки.

<div class="container 2">
<button type="button" class="btn btn-primary btn-lg btn-block" data-toggle="modal" data-target="#newRoute">
    CREAR NUEVA RUTA
</button>


<div class="modal fade" id="newRoute" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
    <div class="modal-dialog modal-md" role="document">
        <div class="modal-content">
            <div class="modal-body">
                <div class="container-fluid">
                    <div class="row">
                        <form class="route" method="post">
                            <div class="col-md-6 col-sm-6 col-xs-6">
                                <div class="form-group">
                                    <label for="name">Ponle un nombre a la ruta</label>
                                    <input type="text" class="form-control" id="name" name="name" required>
                                </div>
                                <div class="form-group">
                                    <label for="city">Ciudad</label>
                                    <input type="text" class="form-control" id="city" name="city" required>
                                </div>
                                <div class="form-group">
                                    <label for="length">Distancia</label>
                                    <input type="text" class="form-control" id="length" name="length" required>
                                </div>


                            </div>
                            <div class="col-md-6 col-sm-6 col-xs-6">
                                <div class="form-group">
                                    <label for="start_point">Punto de salida</label>
                                    <input type="text" class="form-control" id="start_point" name="start_point"
                                           required>
                                </div>
                                <div class="form-group">
                                    <label for="difficulty">Dificultad</label>
                                    <input type="text" class="form-control" id="difficulty" name="difficulty"
                                           required>
                                </div>
                                <div class="form-group">
                                    <label for="date">Fecha de la ruta</label>
                                    <input type="date" class="form-control" id="date" name="date" required>
                                </div>
                            </div>


                            <div class="col-md-12 col-sm-12 col-xs-12">
                                <div class="form-group">
                                    <label for="description">Detalles de la ruta</label>
                                    <textarea class="form-control" rows="5" id="description"
                                              name="description"></textarea>
                                </div>
                            </div>
                            <div class="modal-footer">
                                <div class="form-group">
                                    <button type="submit" name="submit" id="submit" class="btn btn-primary"
                                            value="Enviar">
                                </div>
                            </div>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

и вот мой PHP-код

include('db/db.php');

if(isset($_POST['submit'])) {
// Adjudicar name a variable
$name = stripslashes($_POST['name']);
$name = mysqli_real_escape_string($conn, $name);

// Adjudicar city a variable
$city = stripslashes($_POST['city']);
$city = mysqli_real_escape_string($conn, $city);

// Adjudicar length a variable
$length = stripslashes($_POST['length']);
$length = mysqli_real_escape_string($conn, $length);

// Adjudicar start_point a variable
$start_point = stripslashes($_POST['start_point']);
$start_point = mysqli_real_escape_string($conn, $start_point);

// Adjudicar difficulty a variable
$difficulty = stripslashes($_POST['difficulty']);
$difficulty = mysqli_real_escape_string($conn, $difficulty);

// Adjudicar date a variable
$date = stripslashes($_POST['date']);
$date = mysqli_real_escape_string($conn, $date);

// Adjudicar description a variable
$description = stripslashes($_POST['description']);
$description = mysqli_real_escape_string($conn, $description);

// QUERY
$query = "INSERT INTO routes (name, city, length, start_point, difficulty, user_id, date, description) VALUES ('$name','$city',$length,'$start_point','$difficulty',".$_SESSION['id'].",'$date','$description')";

// Se realiza la query
$result = mysqli_query($conn,$query);

//Condición si se realiza la query correctamente
if($result){
    header("Location: routes.php");
    echo '<script type="text/javascript">alert("'.$query.'");</script>';

}else{
    echo '<script>alert("ERROR");</script>';
}}

my db.php (подключение к базе данных)

$conn = new mysqli('localhost', 'root', "", 'users');

if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

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

PS. Когда я отправляю форму, это то, что появляется в адресе (все поля были заполнены образцом текста). Похоже, получить форму.

http://localhost/Proyecto/routes.php?name=Test&city=Test&length=20&start_point=Test&difficulty=Test&date=2018-05-12&description=Test+description&submit=Enviar

Ответы [ 2 ]

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

Ваш код формы правильный, Я проверил его в своей системе .Вы должны проверять / тестировать какую-то другую страницу или форму.

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

Попробуйте проверить, если вы забыли закрыть какую-либо другую форму в вашем коде, которая должна быть с method="get" или без атрибута метода и поэтому, когда вы отправляете данные, он получает метод из этой формы. Код, который вы публикуете здесь, должен работать правильно.

...