Такой странный вопрос у меня. Админка, страница настроек... На страницу выводится куча настроек для их изменения.... предположим таблица состоит из трёх полей..соответственно три какие-то настройки... Так вот думаю как бы корректно изменять эти настройки если изменился только один параметр. 1) вариант сменить всё одним запросом. PHP: UPDATE `settings` SET `pole1` = '".$_POST['pole1']."' , `pole2` = '".$_POST['pole2']."' , `pole3` = '".$_POST['pole3']."' примерно так Но в таком случае не вижу надобности апдейтить все поля, если изменилось только одно...тем более как я сказал настроек там не 3 а намного больше. 2) Второй вариант это проверить изменена ли определённая настройка и если изменена, то апдейтить поле с этой настройкой. Но в тоже время если все настройки сменены, то тыща sql запросов это тоже не айс. Так вот как лучше изменять настройки в такой ситуации?
Префикс - это набор символов, с которого начинаются все имена таблицы для данного форума, чата или еще чего-нибудь. Например, для форумов PhpBB все таблицы начинаются на phpbb_, то есть в базе таблицы типа phpbb_auth_access, phpbb_users, phpbb_vote_voters и т.д. Вообще-то префикс придумывается самим пользователем или устанавливается по умолчанию. У вас есть шелл-доступ на хостер? Или вы ковыряете БД через phpMyAdmin? В первом случае, надо зайти по ssh со своим логином и пассом, затем набрать в командной строке Code: mysql -uusername -ppassword -hmysql4.freehostia.com mysql> use dbname mysql> show tables; Вместо username, password и dbname вводите свои собственные данные Вот и все. Во втором случае все просто - достаточно кликать мышкой
Чтобы апдейтить только те настройки, которые изменились - тебе придется сначала спросить у базы данных эти настрйки, а затем сравнить их с введенными. В результате получится немеренное количество запросов. Проще и лучше всего сделать именно так, как ты написал в своем коде, то есть просто отапдейтить все настройки снова.
Macro Ну я тоже склонялся к тому чтобы одним запросом всё апдейтнуть. Кстати насчёт провеки изменения настроек, базу данных спрашиваю ещё в самом начале, а потом можно просто проверять конкретное поле)) спасибо!
Да, что-то я ступил, ведь тыдолжен вывести настройки в поля =) Ну, теоретически можно написать джаваскрипт, который будет отсылать только измененные параметры, но только зачем? Сильно это ничего не изменит.
.:EnoT:. второй вариант получается нагруженнее первого т.к. тебе нужно делать ещё один запрос к бд и смотреть что там изменилось.Можно ещё сохранять дефолтовые значения в сессии из первого запроса
Не.. сравниваю сначала, если $a равно $b то $logic=true, если нет, то $logic=false. PS Вроде понял, в случае false просто ничего не выводится (null, пустое значение), если true, то единица... Как теперь сделать такое ($a-$d - переменные): Допустим $string=$a."==".$b."and".$c."==".$d тип строка. Как теперь получить результат логического вычисления того что записано в строковой переменной $string? Заюзать eval ?
Я не пойму что у вас не получается... Вот можете убедиться, что в $a попадает boolean тип результата выполнения операции. PHP: var_dump($a = (bool) ($b == $c)); Что касается строковых переменных - да, чтобы получить результат выражения, которое представлено строковым выражением, то нужно применить к нему функцию eval: PHP: $a = '$b=1+1'; eval($a); var_dump($b); З.Ы. Кстати информация для размышления: при выводе булевые выражения приводятся к интовому типу... То есть: PHP: $a = true; print($a); Выведет 1, а не true...
Как убрать из строки все теги <a> но только если они имеют поле href <a href="123">wefwef</a> убрать, а <a name="23">wefwef</a> оставить
2cash$$$ Вот впринципе рабочий =) PHP: <?php $string = '<a href="12">wefwef</a> убрать, а <a name="23">wefwef</a> оставить<a href="123">wefwef</a> убрать, а <a name="23">wefwef</a> оставить'; $body = ereg_replace('(<a href=")+([0-9])+(">)+([a-z])+(</a>)', '', $string); echo $body; ?>
Дорогие форумчане! Подскажите, как отличить в инете известных личностей от их "двойников"? Так много в последнее время появилось "звездочек", в блогах например...))))))))