Форум программистов, компьютерный форум, киберфорум
JavaScript: ExtJS
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
1 / 1 / 1
Регистрация: 22.11.2009
Сообщений: 44
1

Возможно ли получить от сервера простой ответ без использования data.store?

03.06.2012, 19:13. Просмотров 1672. Ответов 1
Метки нет (Все метки)


В общем, нужна просто проверка на существование поля с данными.
Т.е. нужно что:
Есть таблица с адресными данными по предприятиям. Есть кнопка для добавления нового, по нажатии выводится prompt с предложением ввести номер. Надо проверить есть такой номер в базе или нет и выполнять соответствующие действия (занести в базу/вывести "Такой номер уже существует!").
Так вот, обязательно ли для этого городить data.store? Ведь по сути от сервера требуется ответ вида да/нет. Можно ли обойтись без него и как это сделать?

Добавлено через 5 часов 1 минуту
Пытаюсь делать так:
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Ext.Ajax.request({
    url: "addtest.php",
    params: {
    number: text
},
    success: function(){
        store.insert(0, new User());
        var record = store.getAt(0);
        var dataIndex = 'Number';
        record.beginEdit();
        record.set(dataIndex, text);
        record.endEdit();
        Ext.Msg.alert('OK!', 'Data Saved!');
    },
    failure: function() {
        Ext.Msg.alert('Failure!', 'This number already exists!');
        }
});
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
header('Content-Type: text/html; charset=UTF-8'); 
//Подключение к БД
if ($db = @mysql_connect("localhost", "root", "123456")) { 
   mysql_select_db("test2"); 
   mysql_query("SET NAMES utf8"); 
//Прием данных от пользователя
   $number = $_POST['number'];
   
    //Занесение полученных данных в БД
    $queryString = "INSERT INTO `table2` (`Number`) VALUES ('".$number."')";
    $q = mysql_query($queryString);
    if ($q) {
            echo '{"success":"true"}';
        }
        else {
            echo '{"success":"false"}';
        }
    
  mysql_close($db);
}
?>
В итоге всегда получается success: true, в таблицу добавляется новая строка, естественно не сохраняется после перезагрузки страницы, т.к. это первичный ключ и двух одинаковых не может быть.
В чем может быть дело?

Добавлено через 49 минут
Помогли на другом форуме:

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Ext.Ajax.request({
                                        url: "add.php",
                                        params: {
                                            number: text
                                        },
                                        success: function(response){
                                            response = Ext.decode(response.responseText);
                                            if(response.success == 'true') {
                                                store.insert(0, new User());
                                                var record = store.getAt(0);
                                                var dataIndex = 'Number';
                                                record.beginEdit();
                                                record.set(dataIndex, text);
                                                record.endEdit();
                                                Ext.Msg.alert('OK!', 'Data Saved!');
                                                
                                            }
                                            else {
                                            Ext.Msg.alert('Failure!', 'This number already exists!');
                                            }
                                        }
                                    });
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.06.2012, 19:13
Ответы с готовыми решениями:

Возможно ли без использования цикла получить символ с конца нулевого аргумента main()?
Использую имя файла как аргумент для предварительной настройки программы. Хочу без помощи поиска в...

Strict Standards: Declaration of VirtueMartModelMedia::store() should be compatible with VmModel::store($data)
Strict Standards: Declaration of VirtueMartModelMedia::store() should be compatible with...

Публикация Delphi приложения в Windows Store без использования Visual Studio
Подскажите пожалуйста, можно ли выложить в windows store проект не на Visual Studio, и если да, то...

Возможно ли скинуть игру в App Store без SKU и Product ID?
привет всем, у меня такая проблема возможно скинуть игру в App Store без SKU и Product ID?без...

1
1 / 1 / 5
Регистрация: 08.05.2012
Сообщений: 10
04.06.2012, 10:13 2
Попробуй так :
PHP
1
2
3
4
5
6
    if ($q) {
            echo '{"success":true}';
        }
        else {
            echo '{"success":false}';
        }
Тогда это сработает
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Ext.Ajax.request({
    url: "addtest.php",
    params: {
    number: text
},
    success: function(){
        store.insert(0, new User());
        var record = store.getAt(0);
        var dataIndex = 'Number';
        record.beginEdit();
        record.set(dataIndex, text);
        record.endEdit();
        Ext.Msg.alert('OK!', 'Data Saved!');
    },
    failure: function() {
        Ext.Msg.alert('Failure!', 'This number already exists!');
        }
});
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.06.2012, 10:13

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Неполный ответ от сервера. Возможно ли?
Доброго времени суток форумчанам. У меня возникла такая странная ситуация: Есть программа,...

Получить ответ от сервера
Что за команда в HttpWebRequest, при помощи которой можно узнать код ответа от сервера. По...

Получить ответ от сервера
Попробовал отправить запрос с помощью QNetworkAccessManager и QNetworkRequest, а с помощью сигнала...

Получить ответ от сервера
Добрый день! У меня возник еще один вопрос. Пишу программу которая авторизовывается на одном...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.