Извини что не подробно; просто подскажу что искать: у инпутов на форме или у самой формы тебе с помощья яваскрипта надо обработать событие onkeypress (заодно и onkeydown и onkeyup). По умолчанию, если нажат энтер (вросде #13) происходит сабмит. Если ты укажешь пустой обработчик, думаю, получится.
UPDATE `DOCUMENTS` SET `ONTOP` = 1 WHERE `ID` = '36' OR `DOCNAME` = (SELECT FIRST 1 `DOCNAME` FROM `DOCUMENTS` where таким же полем DOCNAME )
UPDATE `DOCUMENTS` SET `ONTOP` = 1 WHERE `ID` = '36' OR `DOCNAME` in (SELECT `DOCNAME` FROM `DOCUMENTS` where таким же полем DOCNAME )
только я не совсем понял фразу "таким же полем DOCNAME". Таким же как что? (Добавление)
ААА, понял! либо id 36, либо dockname такой же, как один из тех, что с id 36?
Тогда вот:
UPDATE `DOCUMENTS` SET `ONTOP` = 1 WHERE `ID` = '36' OR `DOCNAME` = (SELECT FIRST 1 `DOCNAME` FROM `DOCUMENTS` where id = 36)
UPDATE `DOCUMENTS` SET `ONTOP` = 1 WHERE `ID` = '36' OR `DOCNAME` in (SELECT `DOCNAME` FROM `DOCUMENTS` where id = 36 )
По поводу того, что часть запроса всегда true - вроде я ошибся
проверь селектом, существует ли уже такая строка. (если он вернет пустой набор, значит строки нет). И если таоке тебе часто прийдется делать, советую создать индекс по проверяемым полям
tar - это *nix-овый архиватор. В винде такая команда не прокатит.
Я для создания ZIP-ов этим пользуюсь:
сама фунция внизу. Просто сохраняешь это в отдельный файл, инклюдишь его, вызываешь append_to_zip($in_files, $arc_file, $compress) и всё! только переменные не забудь определить
И все равно, если таким образом считается количество открываний страницы, то так делать не хорошо.
Во-первых, пока этот скрипт выполняется один раз, кто-то может еще открыть страницу несколько раз, и ему достанутся неизмененные данные из файла, и пошла цепочка...
Во-вторых, переполнение. Она обнулится. Правда, ждать этого долго может оказаться.
Ну а вывести переменную внутри текста "blablabla $trr blablabla" или 'blablabla'. $trr .'blablabla'. C точки зрения быстродействия второй вариант предпочтительнее. Читал на этом сайте статью, что в этом случае до 40% быстрее команда вып-ся
проще так (коннекиты к бд не пишу):
в $file считали файл;
$file = str_replace("START FILE", "", $file); //и с END то же
$lines = explode('* *', $file); //теперь lines[0] - первая потенциальная запись в таблицу [1]-2я и тд
for ($i=0; !is_null($lines[$i]); $i++) {
....$fields = explode ('*', $lines);
....$query = 'INSERT INTO table (qw,e,q,w,e,wewe) VALUES ($fields[0], $fiends[1]...)'
...............
}
кстати, записи разделяются **, а поля *, насколько я вижу, а в предыдущем скрипте ** не заметили
[i](Добавление)
коннекиты - это я "коннэкты" криво написал случайно))
округлить до 1000: делишь на 1000 на цело и запоминаешь остаток. целую эту часть умножаешь на 1000. если остаток >500 результат+=1000 (Добавление)
а если без отсебятины, то round(1241757, -3); будет 1232000. -3
триггеры (Добавление)
на инсерт в одну таблицу запусается триггер, вставляющий соотв строку в другую. потом апдейт этой строки (найти ее та сможешь, раз таблицы связаны)
[quote=M@X]Помогите мне пожалуйста разобраться с header-ми, они у меня отказываются работать, выдается ошибка:
Warning: Cannot modify header information - headers already sent by (output started at C:wampwwwtest.php:4) in C:wampwwwtest.php on line 13
Это значит, что хедеры уже были посланы скриптом C:wampwwwtest.php, а посылать их можно только однажды. Посмотри, возможно в скрипте до посылки хедеров присутствуют операторы вавода и убедись, что возле <? ?> снаружи нет пробелов, энтеров и пр.