07 декабря 2007

JavaScript SQL

И опять.. пишу пятисотый раз очередной проект.. и опять.. надо писать
тонну кода ради того чтобы записать на сервак пару строк данных..
косяк где ?
1. Прочитать надо поля ? Надо
2. Подсказать что неправильно надо ? Надо
3. Отправить AJAXово надо ? Надо бле
4. На серваке проверить данные надо ? Надо
5. Записать куда-то надо ? Надо опять же
6. Свормировать ответ надо ? а то и JSONP.. конечно же надо
7. Получить ответ надо от сервака ? стессно.
8. Обработать все аккуратненько и что-то сделать наконец

Геморой какой-то.
Фреймворки даже спасают.
Ну прощще конечно с ними, но что они могут ? Они только база..
к тому же сервер ?

Давайте-ка глянем, надо ли это все ?
Какого куя как грицца все это ?
Надо творить, а приходится вспоминать синтаксис целой кучи
разношерстных вещщей.

И че ?
В итоге разрабатывается клиенско серверный слой, который имеет общий
синтаксис и работает так:

На JS генерицца SQL подобный кусок кода и отдается на съедание.
На стороне сервера интерпретатор его выполняет наконец.
JS принимает ответ.. ну раз уж тут JSONP, то что уж говорить.. пусть
как есть.. вывод уж сами делаем.

теперь подробнее..
Прочитать поля ?
Это равносильно передать id

Подсказать что неправильно
Как подсказывать это визуально все..
Конечно можно было бы функцию такую написать с шаблонами, но зачем ?
Она будет нести лишние шаблоны, хотя как правило какие это поля ?
логин пароль мыло url текст другой да и все.
Если например проверка не прошла, то вернем текст с ошибкой.. погоди,
а как узнать от чего ?
Тогда для каждого поля передавать тип и данные, а возвращать текст
ошибки. Все.
Все просто.Это займет строк 10-20 однокомандок, зато каких !
Следующее..

AJAXово отправить..
Ну тут вопрос.. ну пусть часть задач решает jQuery или любой другой
двиган, но дело-то ведь не в этом. Никогда не охота отправлять
примерно так:
function sendURL ()
{$.getJSON("rate.php?url="+$('#url').val()+"&rate="+$('#rate').val(), function(json){
$("#result").html(json.text);
});
}

Недалеко от Perl ушли.

а что если так:
$sql='insert into users (name,email,password) values('+name+','+email+','+password+')';
sendSQL();

В чем тут проблема ?
Да ни в чем собсна, ведь тот же пароль передается не как-то по
другому, а точно так же если бы мы отправляли его как раньше.
Другие скажут: а если так ?

$sql='select * from users'
чик.. и пароли у нас.
А кто сказал что будет select ?
Давайте рассмотрим типичные задачи
Записать новое сообщение
Показать пачку уже имеющихся
Да вот и все..

А если так?
Показать рейтинг юзера..
Запрос необходим с аудентификацией... как задолбала эта
аудентификация... т.е. получается что напрямую с MySQL нам блокирет
работу аудентификация.

Тогда что, анализировать запрос и поля password обрабатывать по
другому ?
..
и тут в догонку.
insert into users rating=10 where name=ass
Ну да бог с ними...

Вариант другой: Ну мы отправляем SQL строку.. на сервере мы
ограничиваемся статическими SQL и просто проверяем по шаблону возможно
ли в данном случае сделать такой SQL запрос.

Ну вот блин и начали Граалить. Накуй.

Чего же сделать ?... ммм.
и парсить-то неохота..
Серверная обработка необходима.
Чъерт! Бле

Ну пускай.. ну как ? и для чего, лишь для аудентицикации ведь и все.
Можно сделать например так:
'user','pass','sql'
Парсим SQL хоть на автомате, а вот права определяем заранее.
Плюс это будет совместимо с другими тупыми проектами и CMSками.
т.е. сессии будут содержаться как и раньше.
Во !
..
Эээх EUR неуверенно растет.
На получасовике двойное дно.. и пробило канал, по развороту по идее
Бари подходит.. Так отвлекся.

Решено... ни строчки не напишу, потупому.
Уж лучше retWebOS еще раз придется писать для PHP.. но
;)))
Ну ладно принято.. имя пароль и SQL.
Допустим пришли на сервак.. Проверяем аудентификацию по БД.
Подходит ? Значит выполняем SQL, результат пакуем в JSONP, например
при помощи dklab.ru..
Ну и отправляяем... а нет.
А как же проверка всех параметров на сторое сервера ?
чеееерт...
Тогда надо все передавать отдельно и не париться с SQLБля бля бля..
интересно-то как.
Ну-ка.. тогда надо делать двухсторонний JSON так так так...
уже инетресно. Двухсторонний JSONгыы..
Нет чтобы JavaScript сделать на сторое сервера да и все бле, хотя
вроде как JSON ставят как отдельный язык, только основа JSВот гемарой.


Видеочат рулетка