Банальное про php

12
D
На сайте с 14.01.2007
Offline
153
#11
DiAksID:
зачем здесь аякс то, для "утончённости" ?

ну а кто его знает, может у ТС там страница, для генерации которой нужно 100500 select'ов. экономия, аднака;)

DiAksID
На сайте с 02.08.2008
Offline
236
#12
Dinozavr:
ну а кто его знает, может у ТС там страница, для генерации которой нужно 100500 select'ов. экономия, аднака;)

согласен, если при визуализации требуется каждый раз пробежать по нескольким десятков записей БД. но "по умолчанию", для задачи:

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

самое простое и "экономное" решение оформить через форму:

простейшая форма на ту же страницу, если POST пустой идёт визуализация, если в в POST команда для мускула, идёт выполнение команды и перезагрзка по header. и все дела, задачка из учебника для "чайников"

именно для такого "интерактива" формы и предназначены.

то же самое можно сделать ещё проще: ссылками с GET на туже страницу. но грузить ботов ПС кучей левых ссылок не кошерно даже с nofollow, имхо.

аякс тоже решение, но пихать его куда попало, только из за того что освоил - не метод. ну и прикрутка jQuery - это ппц "экономия" 😂 другое дело, если у ТС огромная таблица редактируется, тогда другие варианты, кроме аякса отпадают...

show must go on !!!...
Ragnarok
На сайте с 25.06.2010
Offline
239
#13
php.developer:
Я написал, что это пример. Я же не говорю, что нужно просто тупо скопировать. Человек спросил как, я показал один из вариантов.

я написал, чтобы человек в курсе был.

а то сделает, а потом какой-нибудь добрый человек ему полбазы прибьёт

//TODO: перестать откладывать на потом
Seredniy
На сайте с 17.03.2008
Offline
251
#14

Всем спасибо, по теме буду дальше пробовать.

Seredniy добавил 26.05.2011 в 19:32

Собственно есть ошибочка, которая не тормозит скрипт, но выводит варнинг:

Warning: Cannot modify header information - headers already sent by (output started at Z:\home\test2.ru\:9) in Z:\home\test2.ru\ on line 40

Вот проблемный кусок кода:

<body>

<?php
$link = mysql_connect("localhost", "root", "");
mysql_select_db("cw", $link); //Конец коннекта к бд
if(!empty($_GET['del'])) {
$query = "DELETE FROM `orders` WHERE id = ".(int)$_GET['del'];
$res = mysql_query($query) or die(mysql_error());
header('location: http://test2.ru');

}
?>
Wordpress и другие CMS: правки, настройка, верстка и натяжка шаблонов, разработка сайтов "под ключ" (/ru/forum/1008050)
DiAksID
На сайте с 02.08.2008
Offline
236
#15

всё просто, header должен тдти до любого HTML кода, даже до <!DOCTYPE

т.е. должно выглядеть типо так:


<?php
if ( !empty($_POST) ) // или $_GET
{
...
header( ... );
}
?>

<!DOCTYPE ...
php.developer
На сайте с 22.11.2010
Offline
94
#16
Seredniy:
Всем спасибо, по теме буду дальше пробовать.

Seredniy добавил 26.05.2011 в 19:32
Собственно есть ошибочка, которая не тормозит скрипт, но выводит варнинг:



Вот проблемный кусок кода:

<body>

<?php
$link = mysql_connect("localhost", "root", "");
mysql_select_db("cw", $link); //Конец коннекта к бд
if(!empty($_GET['del'])) {
$query = "DELETE FROM `orders` WHERE id = ".(int)$_GET['del'];
$res = mysql_query($query) or die(mysql_error());
header('location: http://test2.ru');

}
?>

Обработчик поставьте выше вывода в браузер.

Seredniy
На сайте с 17.03.2008
Offline
251
#17

Спасибо, теперь работает. Надеюсь дальше все пойдет гладко

C
На сайте с 20.05.2011
Offline
14
#18

ТС, сразу бы вам порекомендовал начинать использовать PDO, что в целом и унифицирует уровень доступа к данным и автоматически квотит или преобразует передаваемые данные в запрос соответствующие типам столбцов

if(!empty($_GET['del'])) {
$query = "DELETE FROM `orders` WHERE id = ".(int)$_GET['del'];

имхо, ужасно смотрится


$query = sprintf('DELETE FROM orders WHERE id = %d', $_GET['del']);

уже тогда

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий