Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
 Аватар для DShcherbakov
0 / 0 / 1
Регистрация: 24.05.2016
Сообщений: 23
1

Добавление в базу данных

11.08.2016, 08:01. Показов 1018. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток. Есть функция добавления товара в каталог, не могу понять, почему при ее вызове в базе данных дублируется запись.
PHP
1
2
3
4
5
6
7
8
9
10
11
function addToCatalog($title, $edible, $author, $pubyear, $price){
    global $link;
    $sql = 'INSERT INTO catalog (title, edible, author, pubyear, price) VALUES (?, ?, ?, ?, ?)';
    if (!$stmt = mysqli_prepare($link, $sql)){
        return false; 
    }
    mysqli_stmt_bind_param($stmt, "sssii", $title, $edible, $author, $pubyear, $price);
    mysqli_stmt_execute($stmt); 
    mysqli_stmt_close($stmt); 
    return true;
}
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.08.2016, 08:01
Ответы с готовыми решениями:

Добавление в базу данных
Можно ли сделать так, чтобы в БД добавлялось сразу 2(в зависимости от токо какое число ползьователь...

Добавление Пользователя в Базу данных
Имеется код. Но правильность кода не проверена. И он достаточно сырой. Помогите пожалуйста...

Как ставить таймеры на ip на добавление записей в базу данных
Всем снова привет, Как можно сделать что бы с одного ip могли добавить только одну запись в базу...

Загрузка файла на сервер, добавление в базу данных ссылки и вывод ссылки из базы
Добрый вечер. Изучаю php, появился вопрос, а решить уже дня 3 не могу своими силами, поэтому прошу...

6
шКодер самоучка
 Аватар для Max Dark
2282 / 1958 / 945
Регистрация: 09.10.2013
Сообщений: 4,388
Записей в блоге: 3
11.08.2016, 08:05 2
DShcherbakov, наверно потому, что она в коде дважды вызывается?
1
 Аватар для DShcherbakov
0 / 0 / 1
Регистрация: 24.05.2016
Сообщений: 23
11.08.2016, 08:14  [ТС] 3
Цитата Сообщение от Cra3y Посмотреть сообщение
DShcherbakov, наверно потому, что она в коде дважды вызывается?
Вот код двух остальных страниц, привязанных к данной функции(div'ы лишние повырезал):
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Форма добавления товара в каталог</title>
</head>
<body>
    <form action="savetocatalog.php" method="post" class="form-horizontal">
        <p>Название: <input type="text" name="title" size="100" class="form-control"></p>
        <p>Съедобное:
        <select class="form-control" name="edible">
            <option value="yes">Да</option>
            <option value="no">Нет</option>
        </select>  
        </p>
        <p>Автор: <input type="text" name="author" size="50" class="form-control"></p>
        <p>Год издания: <input type="text" name="pubyear" size="4" class="form-control"></p>
        <p>Цена: <input type="text" name="price" size="6" class="form-control"> руб.</p>
        <p><input type="submit" value="Добавить" class="btn btn-primary"></p>
    </form>
</body>
</html>
savetocatalog.php:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
    require_once '../models/login.php';
    checkUser();
    require "../models/database.php";
    require "../models/functions.php";
    $title = trim($_POST['title']);
    $edible = trim($_POST['edible']);
    $author = trim($_POST['author']);
    $pubyear = trim($_POST['pubyear']);
    $price = trim($_POST['price']);
    addToCatalog($title, $edible, $author, $pubyear, $price);
    if(!addToCatalog($title, $edible, $author, $pubyear, $price)){ 
        echo 'Ошибка'; 
    } else { 
        header("Location: addtocatalog.php"); 
        exit; 
    }
0
шКодер самоучка
 Аватар для Max Dark
2282 / 1958 / 945
Регистрация: 09.10.2013
Сообщений: 4,388
Записей в блоге: 3
11.08.2016, 08:17 4
Лучший ответ Сообщение было отмечено DShcherbakov как решение

Решение

DShcherbakov, строка 11 в savetocatalog.php явно лишняя
1
 Аватар для DShcherbakov
0 / 0 / 1
Регистрация: 24.05.2016
Сообщений: 23
11.08.2016, 08:21  [ТС] 5
Цитата Сообщение от Cra3y Посмотреть сообщение
DShcherbakov, строка 11 в savetocatalog.php явно лишняя
Хм, спасибо. Не могу понять каким образом тогда функция вызывается, и где =\
0
23 / 23 / 7
Регистрация: 27.07.2015
Сообщений: 149
11.08.2016, 08:22 6
Цитата Сообщение от DShcherbakov Посмотреть сообщение
if(!addToCatalog($title, $edible, $author, $pubyear, $price))
в условии она и вызывается....
1
 Аватар для DShcherbakov
0 / 0 / 1
Регистрация: 24.05.2016
Сообщений: 23
11.08.2016, 08:24  [ТС] 7
Цитата Сообщение от Programust Посмотреть сообщение
в условии она и вызывается....
Спасибо и Вам. Всё понял, считал, что если в ветвлении не задать вызов функции в else, то ее вызова, собственно, и не произойдет.
0
11.08.2016, 08:24
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.08.2016, 08:24
Помогаю со студенческими работами здесь

Добавление записи в базу данных и считывание из базы данных
Здравствуйте! Знаю, что эти вопросы поднимались уже тысячи раз, но помогите пожалуйста. Написала...

Добавление данных из нескольких текстовых полей в базу данных
Добрый день. С толкнулся со следующей проблемой: У меня есть форма в которой генерируется некое...

Добавление данных в базу данных во время функции printf()
Привет всем! У меня возникла проблема. Задача такая: нужно принять данные с одной таблицы в базе...

Добавление данных в базу данных из зависимых списков
Сделала зависимые списки, в которых берутся данные из базы. Нужно, чтобы выбранные данные...

Добавление в базу данных
Здравствуйте! Помогите пожалуйста!!! Вот моя база данных: -- Table structure for table...

Добавление данных в базу
Доброго времени суток! Балуясь дома столкнулся с проблемой: Не добавляются данные в БАЗУ. 100500...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Всё не так уж и плохо.
Hrethgir 25.01.2025
Запустил более-менее сносно регистры в связке с сумматорами. Да - виновата оптимизация от Gowin EDA, дело в том, что Education шифрует нетлист, да и вообще много чего не позволяет. Просто обвязал. . .
Cisco ASA: подробное руководство по настройке и использованию
hw_wired 25.01.2025
В сетевой безопасности межсетевые экраны играют критически важную роль в защите корпоративных инфраструктур от постоянно растущего числа киберугроз. Среди множества решений для обеспечения. . .
Cisco Intelligent Services Gateway: руководство по настройке
hw_wired 25.01.2025
В сетевых инфраструктурах Cisco Intelligent Services Gateway (ISG) играет ключевую роль в организации и управлении сервисами для конечных пользователей. Этот компонент представляет собой. . .
Использование Go (Golang) в Highload-проектах: преимущества и особенности
bytestream 25.01.2025
В мире высоконагруженных систем выбор правильного инструментария играет ключевую роль в успехе проекта. Go (Golang) представляет собой относительно молодой язык программирования, который быстро. . .
Откуда у float лишние цифры в конце дробной части. Представление чисел с плавающей точкой
bytestream 25.01.2025
При разработке программного обеспечения часто возникает необходимость работать с вещественными числами, которые содержат дробную часть. В современных компьютерных системах такие числа представляются. . .
Как использовать глобальную переменную в функции в Python
bytestream 25.01.2025
В программировании на Python глобальные переменные представляют собой особый тип переменных, которые доступны для использования во всех частях программы, включая различные функции, классы и модули. . . .
Как в цикле обойти все элементы map в Java
bytestream 25.01.2025
В разработке на Java одной из наиболее востребованных структур данных является интерфейс Map, который предоставляет эффективный способ хранения и управления парами "ключ-значение". Разработчики. . .
Для чего нужен UserManager.isU­serAGoat(­) в Android и как это использовать
bytestream 25.01.2025
В мире Android-разработки существует множество интересных и порой загадочных функций, о которых знают далеко не все разработчики. Одной из таких функций является метод UserManager. isUserAGoat(),. . .
Как обойти масси в JavaScript. Всё о циклах
bytestream 25.01.2025
JavaScript представляет собой мощный язык программирования, широко используемый в веб-разработке, где массивы и циклы являются фундаментальными концепциями для эффективной работы с данными. Массив в. . .
Как сделать, чтобы существующая ветка отслеживала удалённую в Git. Связывание локальных и удалённых веток
bytestream 25.01.2025
В разработке программного обеспечения системы контроля версий стали неотъемлемой частью процесса создания качественного программного продукта. Эти инструменты позволяют разработчикам эффективно. . .
Как проверить, что файл НЕ существует с помощью Bash
bytestream 25.01.2025
В системном администрировании проверка существования файлов является фундаментальной операцией, особенно при написании скриптов на Bash. Правильная обработка ситуаций, когда файл отсутствует,. . .
Как проверить, что строка пустая, неопределена или null в JavaScript
bytestream 25.01.2025
При разработке веб-приложений на JavaScript разработчики регулярно сталкиваются с необходимостью проверки строковых значений на различные состояния. Валидация данных является критически важным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru