Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215

Select + PHP как записать?

11.12.2021, 21:52. Показов 1410. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Салют. Ребят мне надо отправить выбранный option из select пользователя в бд, но чёт у меня запись записывается кроме самого select вот код
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<div class="modal-body">
       <div class="form-group">
    <label for="tovar_name">Название товара</label>
    <input type="text" class="form-control" id="tovar_name" placeholder="Название">
  </div>      
  <div class="form-group">
  <label for="tovar_name">Категория</label>
    <select name="user_profile_color_1" class="form-control">
  <option id="category1" name="category1" value="1">Синий</option>
  <option id="category2" value="2" name="category2">Зеленый</option>
  <option id="category3" value="3" name="category3">Желтый</option>
  <option value="4">Красный</option>
  <option value="5">Оранжевый</option>
  <option value="6">Черный</option>
</select>
  </div>
  <div class="form-group">
    <label for="tovar_desc">Описание</label>
    <input type="text" class="form-control" id="tovar_desc" placeholder="Описание">
  </div>
  <div class="form-group">
    <label for="tovar_cost">Цена</label>
    <input type="text" class="form-control" id="tovar_cost" placeholder="Цена">
  </div>
  <div class="form-group">
    <label for="tovar_img">Ссылка на картинку</label>
    <input type="text" class="form-control" id="tovar_img" placeholder="Ссылка">
  </div>
  <div class="form-group">
    <label for="tovar_full">Товар (после оплаты)</label>
    <input type="text" class="form-control" id="tovar_full" placeholder="Товар">
  </div>
      </div>
Обаботчик
PHP
1
2
3
4
    
$category = $_POST['category1'];
 
 $query = mysql_query("INSERT INTO `tovars` (`id`, `sm_desc`, `cost`, `views`, `name`, `category1`, `img`, `alter_payment`, `date`) VALUES (NULL, '{$desc}', '{$cost}', '0', '{$name}',  '{$category}', '{$link}', '{$alter_pay}', '{$data}');");
Всю голову сломал почему не записывает именно $category а все записываются отлично
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.12.2021, 21:52
Ответы с готовыми решениями:

Как записать в список <SELECT> строки из Mysql?
Привет всем! я в этих делах новичек, по этому не судите строго=) Делал форму добавления товаров на сайт наткнулся на проблему... Я не...

Select option как обратиться с php?
Пишу на DW. Если выбрать из списка элемент то должно вывести из базы данные в таблицу. Помогите пожалуйста! &lt;form ...

Как вывести значение переменной PHP в список Select?
Здравствуйте. Возник вопрос с выводом значений переменных в список Select. Есть список &lt;div...

16
Невнимательный
 Аватар для ft4l
3114 / 1293 / 359
Регистрация: 08.02.2013
Сообщений: 7,571
Записей в блоге: 2
11.12.2021, 23:00
Цитата Сообщение от xakmika Посмотреть сообщение
<select name="user_profile_color_1" class="form-control">
<option id="category1" name="category1" value="1">Синий</option>
у option не бывает name
http://htmlbook.ru/html/select/name
HTML5
1
2
3
4
   <p><select name="hero">
    <option>Выберите героя</option>
    <option value="Чебурашка">Чебурашка</option>
    <option value="Шапокляк">Шапокляк</option>
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
11.12.2021, 23:52  [ТС]
Цитата Сообщение от ft4l Посмотреть сообщение
у option не бывает name
http://htmlbook.ru/html/select/name
HTML5
1
2
3
4
   <p><select name="hero">
    <option>Выберите героя</option>
    <option value="Чебурашка">Чебурашка</option>
    <option value="Шапокляк">Шапокляк</option>
Цитата Сообщение от ft4l Посмотреть сообщение
<p><select name="hero">
Попробовал как вы указали, так же не записывается не чего
0
Невнимательный
 Аватар для ft4l
3114 / 1293 / 359
Регистрация: 08.02.2013
Сообщений: 7,571
Записей в блоге: 2
12.12.2021, 00:38
Цитата Сообщение от xakmika Посмотреть сообщение
$category = $_POST['category1'];
Пробовали $category = (int) $_POST['user_profile_color_1']; ?

По php-коду даже вообще ничего не хотелось говорить ))
Древнее расширение php_mysql оно вообще где-то ещё работает ? ...
Нет защиты от sql-инъекций
Нет проверок каких-либо входящих данных.
Просматривали хоть что в каких-либо переменных получаете?
типа echo '<xmp>$_POST = ',var_export($_POST,1),'</xmp>';
вывод ошибок/замечаний включён?
типа ini_set('display_errors', 1);// ошибки в браузер // иногда уже включено
error_reporting(-1); // больше сообщений о ошибках и т.п

Возможные ошибки запросов как-то обрабатываются ?
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
12.12.2021, 12:02  [ТС]
Цитата Сообщение от ft4l Посмотреть сообщение
Пробовали $category = (int) $_POST['user_profile_color_1']; ?
А чем он от моего отличается? Я так же пост в переменную присваиваю, а БД всё буду переписывать в любом случаи, я ошибки не могу посмотреть, так как данные отправляются через js в файл, и то есть я файл не вижу вообще. Ну я написал в обработчике условие
PHP
1
if($name == '' || $desc == '' || $category == '' || $cost == '' || $link == ''|| $alter_pay == '') {
И он выдаёт то что не все поля заполнены, $category нечего не получает значит, а почему не получает я так и не могу понять.

Добавлено через 15 минут
Цитата Сообщение от ft4l Посмотреть сообщение
Пробовали $category = (int) $_POST['user_profile_color_1']; ?

По php-коду даже вообще ничего не хотелось говорить ))
Древнее расширение php_mysql оно вообще где-то ещё работает ? ...
Нет защиты от sql-инъекций
Нет проверок каких-либо входящих данных.
Просматривали хоть что в каких-либо переменных получаете?
типа echo '<xmp>$_POST = ',var_export($_POST,1),'</xmp>';
вывод ошибок/замечаний включён?
типа ini_set('display_errors', 1);// ошибки в браузер // иногда уже включено
error_reporting(-1); // больше сообщений о ошибках и т.п

Возможные ошибки запросов как-то обрабатываются ?
Вот js
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
function add() {
    $.ajax({
                                                                                type: 'POST',
                                                                                url: '../action.php',
beforeSend: function() {
                                            
                                        
                                        },  
                                                                                data: {
                                                                                    type: "addTovar",
                                                                                    name: $('#tovar_name').val(),
                                                                                    category: $('#tovar_category').val(),
                                                                                    cost: $('#tovar_cost').val(),
                                                                                    desc: $('#tovar_desc').val(),
                                                                                    link: $('#tovar_img').val(),
                                                                                    alter_pay: $('#tovar_full').val()
                                                                                    
                                                                                },
                                        success: function(data) {
                                            var obj = jQuery.parseJSON(data);
                                           if(obj.success == "fatal") {
                toastr["error"]("<b>Ошибка!</b><br>"+obj.error);
 
                                           }
                                            if (obj.success == "success") {
                $('#close_add').click();
                if($("#tovars").find('#error').length == 1)
{
               $("#tovars").html('');
}
                toastr["success"]("<b>Успех!</b><br>Товар добавлен");
                $('input').val('');
                $("#tovars").append(`<tr id="product`+obj.id+`">
      <th scope="row">`+obj.id+`</th>
      <td>`+obj.name+`</td>
      <td style="white-space: nowrap;">`+obj.desc+`</td>
      <td>`+obj.cost+`</td>
      <td>0</td>
      <td>0</td>
      <td><button data-id="`+obj.id+`" onclick="del(this)" class="btn btn-danger " style="display:inline-block; width:49%;float:left;"><i class="fa fa-times"></i></button>
      <button data-edit="`+obj.id+`" onclick="edit(this)" class="btn btn-primary " style="display:inline-block; width:49%;float:right;" data-toggle="modal" data-target="#edit"><i class="fa fa-edit"></i></button></td>
    </tr>`);                               
                    
                                            }else{
 
                                            
                                                
                                            }
                                        }
                                    });
}
0
Невнимательный
 Аватар для ft4l
3114 / 1293 / 359
Регистрация: 08.02.2013
Сообщений: 7,571
Записей в блоге: 2
12.12.2021, 12:38
Цитата Сообщение от xakmika Посмотреть сообщение
чем он от моего отличается?
отличается тем что name user_profile_color_1 берётся из select а не из option.

Цитата Сообщение от xakmika Посмотреть сообщение
файл не вижу вообще
Это плохо , когда нельзя посмотреть вывод какой-нибудь, на этапе отладки.
Как вариант сообшения обработчика, с выводом всякой диагностики, возможно массив.
упаковывать в тот-же json, которым обработчмк отвечает.
А там где
success: function(data) {
var obj = jQuery.parseJSON(data);

Добавить на время отладки расппечяатку всего этого json куда-то в любой элемент страницы.
Или есть варианты не упаковывать и просто распечатать весь вывод,
просто если указывают dataType:json или забыл как оно бывает )) то в таких случаях запрос ошибкой завершается
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
12.12.2021, 18:09  [ТС]
Цитата Сообщение от ft4l Посмотреть сообщение
success: function(data) {
var obj = jQuery.parseJSON(data);
У меня сайт не грузит, куда именно вставить код? я js не знаю вообще.
0
Невнимательный
 Аватар для ft4l
3114 / 1293 / 359
Регистрация: 08.02.2013
Сообщений: 7,571
Записей в блоге: 2
13.12.2021, 02:27
Цитата Сообщение от xakmika Посмотреть сообщение
js не знаю
тогда просто напишите теcтовый html-файл с формой, action='../action.php' method="post"
и смотрите вывод .
имена полей должны быть как в запросе отправляемым этим jquery.ajax
Цитата Сообщение от xakmika Посмотреть сообщение
JavaScript
9
10
11
12
13
14
15
16
17
18
                                                                                data: {
                                                                                    type: "addTovar",
                                                                                    name: $('#tovar_name').val(),
                                                                                    category: $('#tovar_category').val(),
                                                                                    cost: $('#tovar_cost').val(),
                                                                                    desc: $('#tovar_desc').val(),
                                                                                    link: $('#tovar_img').val(),
                                                                                    alter_pay: $('#tovar_full').val()
                                                                                    
                                                                                },
т.е. у этого select, который tovar_name, должно быть name="name"
или типа того) надо разбираться
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
13.12.2021, 19:34  [ТС]
Цитата Сообщение от ft4l Посмотреть сообщение
action='../action.php' method="post"
Я сделал отдельно скрипт, и всё ок работает, это что-то именно с этим скриптом, а он мне нужен, он передаёт формы в js, и без перезагрузки записывает или же выдаёт ошибку

Добавлено через 36 минут
JS
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
jQuery(document).ready(function($){
    if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Kindle|Silk|Opera Mini/i.test(navigator.userAgent)) {
        $('.palka').hide();
    }
    setTimeout(function() {check();},1500);
  $preloader = $('.loaderArea'),
    $loader = $preloader.find('.loader');
  $loader.fadeOut();
  $preloader.delay(350).fadeOut('slow');
  
});
$( document ).ready(function() {
    toastr.options = {
        "closeButton": true,
        "debug": false,
        "newestOnTop": true,
        "progressBar": true,
        "rtl": false,
        "positionClass": "toast-top-right",
        "preventDuplicates": false,
        "onclick": null,
        "showDuration": 300,
        "hideDuration": 1000,
        "timeOut": 2000,
        "extendedTimeOut": 1000,
        "showEasing": "swing",
        "hideEasing": "linear",
        "showMethod": "fadeIn",
        "hideMethod": "fadeOut"
    }   
});
$(window).scroll(function (event) {
        var y = $(this).scrollTop();
        if ($(this).scrollTop() > 57 ) {
                $('body').addClass('fixed-body');
                $('.navbar').addClass('stuck');
        } else {
            
            $('.navbar').removeClass('stuck');
            $('body').removeClass('fixed-body');
        }
    });
function check() {
    setTimeout(function() {
    if($("#tovars").find('tr').length < 1)
{
    
    $("#tovars").fadeIn(400).append(`<tr>
      <td colspan="7" id="error">Вы не добавили ниодного товара.. </td>
      
    </tr>`);
}
}, 370);
// purchases
setTimeout(function() {
    if($("#purchase").find('tr').length < 1)
{
    
    $("#purchase").fadeIn(400).append(`<tr id="errors">
      <td colspan="3" id="error">Вы еще ничего не покупали :(</td>
      
    </tr>`);
}
}, 1);
}
function deposit() {
                        $.ajax({
                                                                                type: 'POST',
                                                                                url: '../action.php',
beforeSend: function() {                                    
                                        },  
                                                                                data: {
                                                                                    type: "deposit",
                                                                                    size: $("#deposit_size").val()
                                                                                    
                                                                                    
                                                                                },
                                        success: function(data) {
                                            var obj = jQuery.parseJSON(data);
                                           if(obj.success == "fatal") {
                toastr["error"]("<b>Ошибка!</b><br>"+obj.error);
 
                                           }
                                            if (obj.success == "success") {
    window.location.href = obj.location;
                                            }else{}
                                        }
                                    }); 
                        
                    }
                                            
    
                
function buy() {
    var tovar_s = $('#confirm').attr('data-id');
    $.ajax({
                                                                                type: 'POST',
                                                                                url: '../action.php',
beforeSend: function() {
                                            
                                        
                                        },  
                                                                                data: {
                                                                                    type: "confirm",
                                                                                    id: tovar_s
                                                                                    
                                                                                    
                                                                                },
                                        success: function(data) {
                                            var obj = jQuery.parseJSON(data);
                                           if(obj.success == "fatal") {
                toastr["error"]("<b>Ошибка!</b><br>"+obj.error);
 
                                           }
                                            if (obj.success == "success") {
toastr["success"]("<b>Успех!</b><br>Вы купили <b>"+obj.name+"</b><br>Товар вы сможете найти в разделе <b>Мои покупки</b>");
$('#balance').html(obj.balance);
if($("#purchase").find('#errors').length == 1)
{
               $("#purchase").html('');
}
$('#purchase').append(`<tr>
      <th scope="row">`+obj.id+`</th>
      <td>`+obj.name+`</td>
      <td>`+obj.tovar+`</td>
    </tr>`);
                                            }else{}
                                        }
                                    }); 
}
function view(tovar) {
$.ajax({
                                                                                type: 'POST',
                                                                                url: '../action.php',
beforeSend: function() {
                                            
                                        
                                        },  
                                                                                data: {
                                                                                    type: "selectTovar",
                                                                                    id: tovar
                                                                                    
                                                                                    
                                                                                },
                                        success: function(data) {
                                            var obj = jQuery.parseJSON(data);
                                           if(obj.success == "fatal") {
                toastr["error"]("<b>Ошибка!</b><br>"+obj.error);
 
                                           }
                                            if (obj.success == "success") {
$('#sel_img').attr('src', obj.image);
$('#sel_name').html(obj.name);
$('#sel_desc').html('<img src="/img/icon.png" class="game-activate-icon"> '+obj.desc);
$('#sel_cost').html(obj.cost+' руб.');
$('#view'+tovar).html(obj.views+' <i class="fa fa-eye" aria-hidden="true"></i>');
$('#confirm').attr('data-id', obj.id);
                                            }else{}
                                        }
                                    });    
}
function save_edit() {
    $.ajax({
                                                                                type: 'POST',
                                                                                url: '../action.php',
beforeSend: function() {
                                            
                                        
                                        },  
                                                                                data: {
                                                                                    type: "saveTovar",
                                                                                    id: $('#save_btn').attr('data-save'),
                                                                                    new_name: $('#edit_name').val(),
                                                                                    category: $('#edit_category').val(),
                                                                                    new_cost: $('#edit_cost').val(),
                                                                                    new_desc: $('#edit_desc').val(),
                                                                                    new_full: $('#edit_full').val()
                                                                                    
                                                                                    
                                                                                },
                                        success: function(data) {
                                            var obj = jQuery.parseJSON(data);
                                           if(obj.success == "fatal") {
                toastr["error"]("<b>Ошибка!</b><br>"+obj.error);
 
                                           }
                                            if (obj.success == "success") {
toastr["success"]("<b>Успех!</b><br> Изменения сохранены");
                                            }else{}
                                        }
                                    });    
}
function edit(that) {
var id = $(that).attr('data-edit');
 
$.ajax({
                                                                                type: 'POST',
                                                                                url: '../action.php',
beforeSend: function() {
                                            
                                        
                                        },  
                                                                                data: {
                                                                                    type: "editTovar",
                                                                                    id_edit: id
                                                                                    
                                                                                    
                                                                                },
                                        success: function(data) {
                                            var obj = jQuery.parseJSON(data);
                                           if(obj.success == "fatal") {
                toastr["error"]("<b>Ошибка!</b><br>"+obj.error);
 
                                           }
                                            if (obj.success == "success") {
$('#edit_name').val(obj.name);
$('#edit_cost').val(obj.cost);
$('#edit_desc').val(obj.desc);
$('#edit_full').val(obj.tovar);
$('#save_btn').attr('data-save', obj.id);
                                            }else{}
                                        }
                                    });    
}
function del(that) {
var id = $(that).attr('data-id');
 
$.ajax({
                                                                                type: 'POST',
                                                                                url: '../action.php',
beforeSend: function() {
                                            
                                        
                                        },  
                                                                                data: {
                                                                                    type: "delTovar",
                                                                                    id_del: id
                                                                                    
                                                                                    
                                                                                },
                                        success: function(data) {
                                            var obj = jQuery.parseJSON(data);
                                           if(obj.success == "fatal") {
                toastr["error"]("<b>Ошибка!</b><br>"+obj.error);
 
                                           }
                                            if (obj.success == "success") {
$('button').prop('disabled', true);
$('#product'+id).fadeOut(270);
setTimeout(function() {$('#product'+id).remove();}, 270);
setTimeout(function() {
$('button').prop('disabled', false);
}, 570);                                            
toastr["success"]("<b>Успех!</b><br>Товар удалён");
check();
                    
                                            }else{}
                                        }
                                    });    
}
function add() {
    $.ajax({
                                                                                type: 'POST',
                                                                                url: '../action.php',
beforeSend: function() {
                                            
                                        
                                        },  
                                                                                data: {
                                                                                    type: "addTovar",
                                                                                    name: $('#tovar_name').val(),
                                                                                    category: $('#tovar_category').val(),
                                                                                    cost: $('#tovar_cost').val(),
                                                                                    desc: $('#tovar_desc').val(),
                                                                                    link: $('#tovar_img').val(),
                                                                                    alter_pay: $('#tovar_full').val()
                                                                                    
                                                                                },
                                        success: function(data) {
                                            var obj = jQuery.parseJSON(data);
                                           if(obj.success == "fatal") {
                toastr["error"]("<b>Ошибка!</b><br>"+obj.error);
 
                                           }
                                            if (obj.success == "success") {
                $('#close_add').click();
                if($("#tovars").find('#error').length == 1)
{
               $("#tovars").html('');
}
                toastr["success"]("<b>Успех!</b><br>Товар добавлен");
                $('input').val('');
                $("#tovars").append(`<tr id="product`+obj.id+`">
      <th scope="row">`+obj.id+`</th>
      <td>`+obj.name+`</td>
      <td style="white-space: nowrap;">`+obj.desc+`</td>
      <td>`+obj.cost+`</td>
      <td>0</td>
      <td>0</td>
      <td><button data-id="`+obj.id+`" onclick="del(this)" class="btn btn-danger " style="display:inline-block; width:49%;float:left;"><i class="fa fa-times"></i></button>
      <button data-edit="`+obj.id+`" onclick="edit(this)" class="btn btn-primary " style="display:inline-block; width:49%;float:right;" data-toggle="modal" data-target="#edit"><i class="fa fa-edit"></i></button></td>
    </tr>`);                               
                    
                                            }else{
 
                                            
                                                
                                            }
                                        }
                                    });
}
PHP
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
<?php
session_start();
require("inc/config.php");
$sid = $_SESSION['logged'];
$data = date("d.m.Y");
$type = $_POST['type'];
$error = 0;
$fa = "";
if($type == "saveTovar") {
    $id = $_POST['id'];
    $name = $_POST['new_name'];
    $cost = $_POST['new_cost'];
    $desc = $_POST['new_desc'];
    $tovar = $_POST['new_full'];
    $category = $_POST['category'];
    // $category = $row['cat1']; 
    if(!$_SESSION['admin_auth']) {
    $error = 3;
    $mess = "Авторизуйтесь как администратор";
    $fa = "fatal";     
    }
    if($error == 0) {
     $query = mysql_query("UPDATE tovars SET name = '$name' WHERE id = '$id'");
     $query1 = mysql_query("UPDATE tovars SET cost = '$cost' WHERE id = '$id'");
     $query2 = mysql_query("UPDATE tovars SET sm_desc = '$desc' WHERE id = '$id'");
     $query3 = mysql_query("UPDATE tovars SET alter_payment = '$tovar' WHERE id = '$id'");
     $fa = "success";
    }
    $result = array(
    'success' => "$fa",
    'error' => "$mess",
    'name' => "$name",
    'cost' => "$cost",
    'tovar' => "$tovar",
    'category' => "$category",
    'desc' => "$desc",
    'id' => "$id_tovar"
    );
}
if($type == "editTovar") {
    $id = $_POST['id_edit'];
    if(!$_SESSION['admin_auth']) {
    $error = 3;
    $mess = "Авторизуйтесь как администратор";
    $fa = "fatal";     
    }
    if($error == 0) {
   $sql_select1 = "SELECT * FROM tovars WHERE id = '$id'";
$result1 = mysql_query($sql_select1);
$row = mysql_fetch_array($result1);
if($row)
{
$id_tovar = $row['id']; // id товара
$cost = $row['cost'];
$tovar = $row['alter_payment'];
$name = $row['name'];
$desc = $row['sm_desc'];
$category = $_POST['category'];
}
    $fa = "success";
    }
    $result = array(
    'success' => "$fa",
    'error' => "$mess",
    'name' => "$name",
    'cost' => "$cost",
    'tovar' => "$tovar",
    'category' => "$category",
    'desc' => "$desc",
    'id' => "$id_tovar"
    );
}
if($type == "deposit")
{
    
$size = $_POST['size'];
$sql_select = "SELECT * FROM users WHERE hash='$sid'";
$result = mysql_query($sql_select);
$row = mysql_fetch_array($result);
if($row)
{   
$bala = $row['balance'];
$user_id = $row['id'];
}
 if($size < 1) {
     $error = 1;
     $mess = "Сумма пополнения от 1";
     $fa = "fatal";
 } 
  if($error == 0) {
$podpis = md5($fk_id.':'.$size.':'.$fk_secret_1.':'. $user_id);
  $fa = "success";
}
    $result = array(
    'success' => "$fa",
    'error' => "$mess",
    'location' => "http://www.free-kassa.ru/merchant/cash.php?m=".$fk_id."&oa={$size}&o={$user_id}&s=".$podpis.""
    );
  
 
}
 
if($type == "confirm") { 
$tovar = $_POST['id'];
// получаем инфу о юзере (ага да)
$sql_select2 = "SELECT * FROM users WHERE hash = '$sid'";
$result2 = mysql_query($sql_select2);
$row = mysql_fetch_array($result2);
if($row)
{
$balance = $row['balance'];
$user_id = $row['id'];
}
// получем инфу о товаре, а иначе нахуй мы вообще сделали "магазин"?
$sql_select1 = "SELECT * FROM tovars WHERE id = '$tovar'";
$result1 = mysql_query($sql_select1);
$row = mysql_fetch_array($result1);
if($row)
{
$id_tovar = $row['id']; // id товара
$size = $row['cost'];
$tovar = $row['alter_payment'];
$name = $row['name'];
}
// ну теперь выявляем ошибки
    if(!$_SESSION['logged']) {
        $error = 1;
        $mess = "Необходимо авторизоваться";
        $fa = "fatal";
    }
    if($_SESSION['logged']) {
    if($balance < $size) {
        $error = 2;
        $mess = "Недостаточно средств";
        $fa = "fatal";
    }
    }
    if($error == 0) {
        $newbalance = $balance - $size;
        $query = mysql_query("UPDATE users SET balance = '$newbalance' WHERE hash = '$sid'");
        $query1 = mysql_query("INSERT INTO `purchases` (`id`, `user_id`, `tovar_id`, `name`, `tovar`) VALUES (NULL, '$user_id', '$id_tovar', '$name', '$tovar');");
        $sql_select21 = "SELECT @@identity FROM purchases";
        $result21 = mysql_query($sql_select21);
        $row = mysql_fetch_array($result21);
        if($row)
        {
        $id_pur = $row['@@identity'];
        }
        $fa = "success";
}
$result = array(
    'success' => "$fa",
    'error' => "$mess",
    'id' => "$id_pur",
    'balance' => "$newbalance",
    'tovar' => "$tovar",
    'name' => "$name"
    );
}
if($type == "delTovar") {
    $delete_id = $_POST['id_del'];
    if(!$_SESSION['admin_auth']) {
    $error = 3;
    $mess = "Авторизуйтесь как администратор";
    $fa = "fatal";     
    }
    if($error == 0) {
    $query = mysql_query("DELETE FROM `tovars` WHERE id = '$delete_id'");
    $fa = "success";
    }
    $result = array(
    'success' => "$fa",
    'error' => "$mess"
    );
}
if($type == "addTovar") {
    $name = $_POST['name'];
    $desc = $_POST['desc'];
    $cost = $_POST['cost'];
    $link = $_POST['link'];
    $category = $_POST['category'];
    $alter_pay = $_POST['alter_pay'];
    if($name == '' || $desc == '' || $category == '' || $cost == '' || $link == ''|| $alter_pay == '') {
    $error = 1;
    $mess = "Заполните все поля!";
    $fa = "fatal";   
    }
    if(!is_numeric($cost)) {
    $error = 2;
    $mess = "Заполните сумму корректно";
    $fa = "fatal";    
    }
    if(!$_SESSION['admin_auth']) {
    $error = 3;
    $mess = "Авторизуйтесь как администратор";
    $fa = "fatal";     
    }
    if($error == 0) {
        $query = mysql_query("INSERT INTO `tovars` (`id`, `sm_desc`, `cost`, `views`, `name`, `category`, `img`, `alter_payment`, `date`) VALUES (NULL, '{$desc}', '{$cost}', '0', '{$name}',  '{$category}', '{$link}', '{$alter_pay}', '{$data}');");
         $sql_select21 = "SELECT @@identity FROM tovars";
$result21 = mysql_query($sql_select21);
$row = mysql_fetch_array($result21);
if($row)
{
    $id = $row['@@identity'];
}
 $fa = "success";
    }
    $result = array(
    'success' => "$fa",
    'error' => "$mess",
    'id' => "$id",
    'desc' => "$desc",
    'name' => "$name",
    'cost' => "$cost",
    'category' => "$category"
    );
 
}
if($type == "selectTovar") {
$id_s = $_POST['id'];
$sql_select1 = "SELECT COUNT(*) FROM tovars WHERE id = '$id_s'";
$result1 = mysql_query($sql_select1);
$row = mysql_fetch_array($result1);
if($row)
{
    $find = $row['COUNT(*)'];
}
if($find == 0) {
    $error = 1;
    $mess = "Товар не существует!";
    $fa = "fatal";
}
if($error == 0) {
$sql_select2 = "SELECT * FROM tovars WHERE id = '$id_s'";
$result2 = mysql_query($sql_select2);
$row = mysql_fetch_array($result2);
if($row)
{
    $img = $row['img'];
    $desc = $row['sm_desc'];
    $name = $row['name'];
    $cost = $row['cost'];
    $views = $row['views'];
    $id = $row['id'];
}
$views_new = $views + 1;
$query = mysql_query("UPDATE tovars SET views = '$views_new' WHERE id = '$id_s'");
$fa = "success";
}
$result = array(
    'success' => "$fa",
    'error' => "$mess",
    'image' => $img,
    'desc' => "$desc",
    'name' => "$name",
    'cost' => "$cost",
    'category' => "$category",
    'views' => "$views_new",
    'id' => "$id"
    );
}
    /* огромное спасибо за покупку, моя страница в вк - https://vk.com/id321223555 по всем вопросам и т.д */
    echo json_encode($result);
?>
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
13.12.2021, 19:34  [ТС]
Кину весь код файла, я всю голову уже сломал над этим кодом, я не знаю почему JS не все поля отправляет в обработчик php

html
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
<?php
session_start();
require("../inc/config.php");
$select = "SELECT * FROM tovars";
$all_tovars = mysql_query($select);
if(!$_SESSION['admin_auth']) {
    header('Location: /admin/auth.php');
}
$sql_select1 = "SELECT COUNT(*) FROM purchases";
$result1 = mysql_query($sql_select1);
$row = mysql_fetch_array($result1);
if($row)
{
    $kupilo = $row['COUNT(*)'];
}
$sql_select1 = "SELECT SUM(suma) FROM payments";
$result1 = mysql_query($sql_select1);
$row = mysql_fetch_array($result1);
if($row)
{
    $profit = $row['SUM(suma)'];
}
$sql_select1 = "SELECT COUNT(*) FROM users";
$result1 = mysql_query($sql_select1);
$row = mysql_fetch_array($result1);
if($row)
{
    $users = $row['COUNT(*)'];
}
if($profit == '') {
    $profit = 0;
} 
?>
<!DOCTYPE html>
<html lang="ru">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?=$sitename?>.<?=$sitedomen?> &raquo; Админ-панель</title>
<meta name="description" content="Здесь вы можете купить готовый сайт для заработка или других целей. Магазин скриптов KotDev.fun предоставляет огромный выбор качественных сайтов." />
<meta name="keywords" content="создание сайта, создать сайт самому, скрипт, скачать скрипты бесплатно, скачать скрипты, скрипты для сайта, скрипты сайтов, движки сайтов, Интернет-магазин, skript, opcash, денежные кейсы, кейсы с деньгами, скрипты буксов, буксы, Хайпы, экономический игры, азартные игры, скрипт интернет магазина, магазин аккаунтов, скрипты рулеток, cosmocard, jetcash, spinmoney, bangcash, armycash, luxacesh, cash, рулетки cs:go, скрипт cs:go рулетки, заработок в сети, заработок в интернете, софт для веб-мастера, взлом рулетки с денежными кейсы, взлом opcash, создание сайта под заказ, создать сайт, заказать сайт, купить сайт, купить opcash, как установить сайт, установка скрипты, как установить скрипт, Купить рулетку, скрипт кейсов, купить web скрипт, купить сайт, рулетка варфейс, рулетка warface, заказать рулетку, купить недорого web скрипт, купить nvuti, скрипт nvuti,купить веб скрипт,магазин скриптов, купить скрипт рулетки,магазин скриптов рулеток,купить рулетку сайт, nvuti," />
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
<link rel="stylesheet" href="../css/style.css">
<link rel="stylesheet" href="../css/toastr.css">
<script src="https://kit.fontawesome.com/6cce539f85.js"></script>
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.3/umd/popper.min.js" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/js/bootstrap.min.js" crossorigin="anonymous"></script>
<script src="../js/jquery-latest.min.js"></script>
</head>
<body>
    <style>
        tr {
            white-space: nowrap;
        }
        @media (max-width:1075.98px) {
    .table-responsive-sm {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar
    }
 
    .table-responsive-sm > .table-bordered {
        border: 0
    }
}
    </style>
<div class="loaderArea">
        <div id="loader"></div>
    </div>    
<nav class="navbar navbar-expand-lg navbar-light bg-light">
  <a class="navbar-brand" href="#">
    <img src="/img/logo.png" width="30" height="30" class="d-inline-block align-top" alt="" title="Котик">
    <?=$sitename?>
  </a>
  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
    <span class="navbar-toggler-icon"></span>
  </button>
 
  <div class="collapse navbar-collapse" id="navbarSupportedContent">
    <ul class="navbar-nav mr-auto">
        <li class="nav-item active">
        <a class="nav-link" href="#">Редактирование товаров</a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="#" data-toggle="modal" data-target="#stat">Статистика</a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="/">На главную</span></a>
      </li>
      <li class="nav-item">
        <a class="nav-link" href="/admin/admin_logout.php">Выйти</a>
      </li>
    </ul>
    </div>
</nav>
<!-- NAVBAR END -->
 
<div class="container wrapper">
<div class="tab-content">
<div role="tabpanel" class="tab-pane fade in active show">
<div class="container">
<div class="row">
 <!-- Админ - панель -->
 <div style="width:100%; margin-bottom:10px">
     <h5 style="float:left; display:inline-block; padding-top:3px">Товары</h5><button class="btn btn-primary" style="float:right; display:inline-block;" data-toggle="modal" data-target="#add_prod">Добавить</button>
 </div>
<table  class="table-responsive-sm table table-striped- table-bordered table-hover table-checkable">
  <thead>
    <tr>
      <th scope="col">#</th>
      <th scope="col">Название</th>
      <th scope="col">Описание</th>
      <th scope="col">Цена (RUB)</th>
      <th scope="col">Просмотров</th>
      <th scope="col">Покупок</th>
      <th scope="col">Действия</th>
    </tr>
  </thead>
  <tbody id="tovars">
      <?php 
while($row = mysql_fetch_array($all_tovars)) {
 
$id = $row['id'];
$name = $row['name'];
$desc = $row['sm_desc'];
$cost = $row['cost'];
$views = $row['views']; 
$sql_select1 = "SELECT COUNT(*) FROM purchases WHERE tovar_id = '$id'";
$result1 = mysql_query($sql_select1);
$row = mysql_fetch_array($result1);
if($row)
{
    $kupili = $row['COUNT(*)'];
}
echo '<tr id="product'.$id.'">
      <th scope="row">'.$id.'</th>
      <td>'.$name.'</td>
      <td style="white-space: nowrap;">'.$desc.'</td>
      <td>'.$cost.'</td>
      <td>'.$views.'</td>
      <td>'.$kupili.'</td>
      
      <td><button data-id="'.$id.'" onclick="del(this)" class="btn btn-danger " style="display:inline-block; width:49%;float:left;"><i class="fa fa-times"></i></button>
      <button data-edit="'.$id.'" onclick="edit(this)" class="btn btn-primary " style="display:inline-block; width:49%;float:right;" data-toggle="modal" data-target="#edit"><i class="fa fa-edit"></i></button>
      </td>
    </tr>';
 
  }
?>
 
  </tbody>
</table>
<!-- КОНЕЦ -->
    </div>
    </div>
    </div>
    </div>
    </div>
 
<!-- Modal "ADD" -->
<div class="modal fade" id="add_prod" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalLabel">Добавление товара</h5>
        <button type="button" class="close" data-dismiss="modal" id="close_add" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">
       <div class="form-group">
    <label for="tovar_name">Название товара</label>
    <input type="text" class="form-control" id="tovar_name" placeholder="Название">
  </div>      
  <div class="form-group">
  <label for="tovar_name">Категория</label>
    <select name="tovar_category" class="form-control">
  <option type="text" value="1">Синий</option>
  <option type="text" value="2">Зеленый</option>
  <option type="text" value="3">Желтый</option>
  <option type="text" value="4">Красный</option>
  <option type="text" value="5">Оранжевый</option>
  <option type="text" value="6">Черный</option>
</select>
  </div>
  <div class="form-group">
    <label for="tovar_desc">Описание</label>
    <input type="text" class="form-control" id="tovar_desc" placeholder="Описание">
  </div>
  <div class="form-group">
    <label for="tovar_cost">Цена</label>
    <input type="text" class="form-control" id="tovar_cost" placeholder="Цена">
  </div>
  <div class="form-group">
    <label for="tovar_img">Ссылка на картинку</label>
    <input type="text" class="form-control" id="tovar_img" placeholder="Ссылка">
  </div>
  <div class="form-group">
    <label for="tovar_full">Товар (после оплаты)</label>
    <input type="text" class="form-control" id="tovar_full" placeholder="Товар">
  </div>
      </div>
     
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-dismiss="modal">Закрыть</button>
        <button type="button" class="btn btn-primary" onclick="add()" >Добавить</button>
      </div>
    </div>
  </div>
</div>
<!-- Modal "EDIT" -->
<div class="modal fade" id="edit" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalLabel">Редактирование товара</h5>
        <button type="button" class="close" data-dismiss="modal" id="close_add" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">
       <div class="form-group">
    <label for="tovar_name">Название товара</label>
    <input type="text" class="form-control" id="edit_name" placeholder="Название">
  </div>
  <div class="form-group">
    <label for="tovar_desc">Цена</label>
    <input type="text" class="form-control" id="edit_cost" placeholder="Описание">
  </div>
  <div class="form-group">
    <label for="tovar_desc">Описание</label>
    <input type="text" class="form-control" id="edit_desc" placeholder="Описание">
  </div>
  <div class="form-group">
    <label for="tovar_full">Товар (после оплаты)</label>
    <input type="text" class="form-control" id="edit_full" placeholder="Товар">
  </div>
      </div>
     
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-dismiss="modal">Закрыть</button>
        <button type="button" class="btn btn-primary" id="save_btn" data-save="" onclick="save_edit()" >Сохранить</button>
      </div>
    </div>
  </div>
</div>
<!-- Modal "STAT" -->
<div class="modal fade" id="stat" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalLabel">Статистика сайта</h5>
        <button type="button" class="close" data-dismiss="modal" id="close_add" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">
       <table  class="table-responsive-sm table table-striped- table-bordered table-hover table-checkable">
  <thead>
    <tr style="text-align:center;">
      <center>
          <th scope="col">Покупок всего</th>
      <th scope="col">Пополнено</th>
      <th scope="col">Пользователей</th>
      </center>
      
    </tr>
  </thead>
  <tbody id="stat">
  <tr>
     
      <td><?=$kupilo?></td>
      <td><?=$profit?></td>
      <td><?=$users?></td>
    </tr>
      </tbody>
      </table>
      </div>
     
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-dismiss="modal">Закрыть</button>
      </div>
    </div>
  </div>
</div>
<script src="../js/script.js"></script>
<script src="../js/toastr.js"></script>
</body>
</html>
0
Невнимательный
 Аватар для ft4l
3114 / 1293 / 359
Регистрация: 08.02.2013
Сообщений: 7,571
Записей в блоге: 2
13.12.2021, 21:55
Лучший ответ Сообщение было отмечено xakmika как решение

Решение

Навернно я понял )
Цитата Сообщение от xakmika Посмотреть сообщение
Всю голову сломал почему не записывает именно $category а все записываются отлично

JavaScript
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
function add() {
    $.ajax({
                                                                                type: 'POST',
                                                                                url: '../action.php',
beforeSend: function() {
                                            
                                        
                                        },  
                                                                                data: {
                                                                                    type: "addTovar",
                                                                                    name: $('#tovar_name').val(),
                                                                                    category: $('#tovar_category').val(),
                                                                                    cost: $('#tovar_cost').val(),
                                                                                    desc: $('#tovar_desc').val(),
                                                                                    link: $('#tovar_img').val(),
                                                                                    alter_pay: $('#tovar_full').val()
                                                                                    
                                                                                },
У селекта
PHP/HTML
180
    <select name="tovar_category" class="form-control">
должно быть id="tovar_category"
чтобы это category: $('#tovar_category').val(), получало значение

Не по теме:

А так да )) код ужасный

PHP
1
2
3
4
5
6
7
8
9
<?php
session_start();
require("../inc/config.php");
 
if(!$_SESSION['admin_auth']) {
    header('Location: /admin/auth.php');
    exit; // без этого код дальше выполняется
}
// Запросы только после
И непонятно зачем такой жирный <meta name="keywords" для ботов
если кроме админа никому не должно быть видно эту страницу ))

1
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
13.12.2021, 22:01  [ТС]
Цитата Сообщение от ft4l Посмотреть сообщение
И непонятно зачем такой жирный <meta name="keywords" для ботов
если кроме админа никому не должно быть видно эту страницу ))
сам не знаю, ахах как я мог проглядеть, странно конечно, спасибо огромное тебе!
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
21.12.2021, 20:58  [ТС]
Цитата Сообщение от ft4l Посмотреть сообщение
должно быть id="tovar_category"
Я добавил новое поле unik а он пустой приходит, всё аналогично делал.
HTML5
1
2
3
4
  <div class="form-group">
    <label for="unik">Уникальность</label>
    <input type="text" class="form-control" id="unik" placeholder="Уникальность">
  </div>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
function add() {
    $.ajax({
                                                                                type: 'POST',
                                                                                url: '../action.php',
beforeSend: function() {
                                            
                                        
                                        },  
                                                                                data: {
                                                                                    type: "addTovar",
                                                                                    name: $('#tovar_name').val(),
                                                                                    unik: $('#tovar_unik').val(),
                                                                                    category: $('#tovar_category').val(),
                                                                                    cost: $('#tovar_cost').val(),
                                                                                    desc: $('#tovar_desc').val(),
                                                                                    link: $('#tovar_img').val(),
                                                                                    alter_pay: $('#tovar_full').val()
                                                                                    
                                                                                },
                                        success: function(data) {
                                            var obj = jQuery.parseJSON(data);
                                           if(obj.success == "fatal") {
                toastr["error"]("<b>Ошибка!</b><br>"+obj.error);
 
                                           }
                                            if (obj.success == "success") {
                $('#close_add').click();
                if($("#tovars").find('#error').length == 1)
{
               $("#tovars").html('');
}
                toastr["success"]("<b>Успех!</b><br>Товар добавлен");
                $('input').val('');
                $("#tovars").append(`<tr id="product`+obj.id+`">
      <th scope="row">`+obj.id+`</th>
      <td>`+obj.name+`</td>
      <td style="white-space: nowrap;">`+obj.desc+`</td>
      <td>`+obj.cost+`</td>
      <td>0</td>
      <td>0</td>
      <td><button data-id="`+obj.id+`" onclick="del(this)" class="btn btn-danger " style="display:inline-block; width:49%;float:left;"><i class="fa fa-times"></i></button>
      <button data-edit="`+obj.id+`" onclick="edit(this)" class="btn btn-primary " style="display:inline-block; width:49%;float:right;" data-toggle="modal" data-target="#edit"><i class="fa fa-edit"></i></button></td>
    </tr>`);                               
                    
                                            }else{
 
                                            
                                                
                                            }
                                        }
                                    });
}
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
if($type == "addTovar") {
    $name = $_POST['name'];
    $desc = $_POST['desc'];
    $cost = $_POST['cost'];
    $link = $_POST['link'];
    $category = $_POST['category'];
    $unik = $_POST['unik'];
    $alter_pay = $_POST['alter_pay'];
    if($name == '' || $desc == '' || $category == '' || $unik == '' || $cost == '' || $link == ''|| $alter_pay == '') {
    $error = 1;
    $mess = "Заполните все поля!";
    $fa = "fatal";   
    }
    if(!is_numeric($cost)) {
    $error = 2;
    $mess = "Заполните сумму корректно";
    $fa = "fatal";    
    }
    if(!$_SESSION['admin_auth']) {
    $error = 3;
    $mess = "Авторизуйтесь как администратор";
    $fa = "fatal";     
    }
    if($error == 0) {
        $query = mysql_query("INSERT INTO `tovars` (`id`, `sm_desc`, `cost`, `views`, `name`, `category`, `unik`, `img`, `alter_payment`, `date`) VALUES (NULL, '{$desc}', '{$cost}', '0', '{$name}', '{$category}', '{$unik}', '{$link}', '{$alter_pay}', '{$data}');");
         $sql_select21 = "SELECT @@identity FROM tovars";
$result21 = mysql_query($sql_select21);
$row = mysql_fetch_array($result21);
if($row)
{
    $id = $row['@@identity'];
}
 $fa = "success";
    }
    $result = array(
    'success' => "$fa",
    'error' => "$mess",
    'id' => "$id",
    'desc' => "$desc",
    'name' => "$name",
    'cost' => "$cost",
    'unik' => "$unik",
    'category' => "$category"
    );
 
}
Вроде без ошибков всё у меня

Добавлено через 50 минут
в логах такая ошибка
Code
1
PHP Notice:  Undefined index: unik in
0
Невнимательный
 Аватар для ft4l
3114 / 1293 / 359
Регистрация: 08.02.2013
Сообщений: 7,571
Записей в блоге: 2
22.12.2021, 01:51

Не по теме:

Цитата Сообщение от xakmika Посмотреть сообщение
if($type == "addTovar") {
$_POST['type'] раньше наверно в $type

Цитата Сообщение от xakmika Посмотреть сообщение
`date`) VALUES .... '{$data}');
тоже не видно откуда

Цитата Сообщение от xakmika Посмотреть сообщение
SELECT @@identity FROM tovars
это я вообще не понял...


Цитата Сообщение от xakmika Посмотреть сообщение
id="unik"
...
unik: $('#tovar_unik').val(),
или там tovar_unik или там #unik
и все id на странице должны быть уникальными
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
22.12.2021, 06:27  [ТС]
tovar_unik я так сделал после публикации, код весь я отправлял высше, везде добавили и не работает.
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
22.12.2021, 18:11  [ТС]
Не кто не поможет ребят?
0
Невнимательный
 Аватар для ft4l
3114 / 1293 / 359
Регистрация: 08.02.2013
Сообщений: 7,571
Записей в блоге: 2
22.12.2021, 22:47
Цитата Сообщение от xakmika Посмотреть сообщение
везде добавили и не работает.
Я-бы начал с того что вместо этого require("inc/config.php");
создал-бы inc/config-new.php
где вместо mysql_connect будет подключение c mysqli
c mysqli_set_charset() или mysqli->set_charset()

Листая, там-же, справочник по всем mysqli-функциям заменителям тех mysql-функций,
заменил-бы все эти mysql_*() на то как оно должно выглядеть с mysqli.

Потом в начале обработчика добавил-бы например
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
class Err {
    public $logfile;
    //public $logfile = __DIR__ .'/logErr.txt'; // errors in php-5.4
    //public $logfile = dirname(__FILE__) .'/logErr.txt';// errors 
    public $MSGS = array();
 
    public function __construct ($log=null) {
        $this->logfile  = $log;
        mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
        set_error_handler(array(&$this, 'HandleError'));
        set_exception_handler(array(&$this, 'HandleException'));
    }
    private function getLevel($num){
        if($num == 1024) return '';
        if(!$num || $num & (1+4+16+64+256+4096)) return 'Fatal: ';
        if($num & (8+8192+16384)) return 'Notice: ';
        if($num & (2+32+128+512+2048)) return 'Warning: ';
        return 'Other: ';
    }
    public function HandleError($Code, $Msg, $File=null, $Line=0, $Context=array()) {
        $this->MSGS[] = $this->getLevel($Code) . strtr($Msg, array('<'=>'&lt;'));
        #var_export(array($Code,$Msg,$File,$Line), 1);
        return true;
    }
    public function HandleException ( $Ex ) {
        $this->MSGS[] = $this->getLevel($Ex->getCode())
        . strtr($Ex->getMessage(), array('<'=>'&lt;'));
        # var_export($Ex, 1);
        return true;
    }
    public function add($str) {
        $this->MSGS[] = $str ."\n";
        return true;
    }
    public function show() {
        if (!$this->MSGS) return;
        echo "<xmp>\n";
        while($str = array_shift($this->MSGS))
            echo $str, "\n";
        echo "</xmp>\n";
    }
    public function log() {
        if (!$this->logfile || !$this->MSGS) return;
        file_put_contents($this->logfile, $this->MSGS, FILE_APPEND+LOCK_EX);
    }
};
 
$ERR = new Err(dirname(__FILE__) .'/logErr.txt');
register_shutdown_function(array($ERR, 'log'));
Сильно не тестил и на php ниже 5.4 не проверял
Почитал-бы ошибки в ./logErr.txt , добавил-бы в код отладочного кода какого-нибудь
наример
PHP
1
trigger_error('$_POST='.var_export($_POST,1));
и потом в обязательном порядке прикрутил-бы либо нормальную обработку входящих данных,
со всякими intval(), mysqli::escape_string()/mysqli_escape_string() и с другим
Или как вариант подготовленные запросы бы использовал, с mysqli::prepare()/mysqli_prepare()

Это самый простой из вариантов справлять с такими случаями но требует просмотреть немало страниц в этом php-справочнике.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.12.2021, 22:47
Помогаю со студенческими работами здесь

Php как передать 2 параметра методом POST из select
Что то вроде этого , я правильно понимаю? &lt;label&gt; &lt;span&gt;Автор:&lt;/span&gt; &lt;select name=&quot;autor_ID&quot; id=&quot;autor_ID&quot;&gt; ...

Php как передать 2 параметра методом POST из select
Добрый вечер дорогие форумчане, столкнулся с проблемой передачи массива методом POST , есть тег select в него из бд передаются 2 значения :...

Как в select на PHP при выборе определенного месяца, изменить количество дней
И еще нужно, что бы при выборе какой то даты пользователем, она сохранялась до следующего выбора даты.

Как записать mod в php?
e * d = 1 (mod m) Как здесь записать mod в php коде P.S. здесь mod не остаток от деления P.S.S. формула из метода шифрования rsa

Как записать переменную из JavaScript в PHP?
подскажите пожалуйста,как мне записать переменную из JavaScript в PHP вот js код function checkBalance() { ...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru