HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 03.07.2008, 01:36
cash$$$
Banned
Регистрация: 06.01.2008
Сообщений: 413
Провел на форуме:
1301036

Репутация: 1334
Отправить сообщение для cash$$$ с помощью ICQ
По умолчанию

Цитата:
Сообщение от ChaaK  
Вопрос такой:

у меня есть файл с настройками. Пишу админку. Нужна функция изменения параметров.

Файл настроек:
PHP код:
//*************DataBase********************/
$dbhost 'localhost';    // DataBase host
$dbuser 'root';        // DataBase user
$dbpass '';            // DataBase pass
$db     'aaa';        // DataBase name
/*****************************************/
Еще много чего... 
Как реализвать чтобы у меня файл не перезаписывался, а изменялись только те строки, где было применено измменение?
Спасибо.
Скажу двумя словами ИМХО, можно использовать ссылку (чтобы изменение переменной внутри функции влияло на неё вне функции: function tst(&$secreload), аналог function tst(var secreload); в Pascal) или обычный параметр функции (тогда в теле функции вы работает с копией первоначальной переменной: function tst($secreload)). Ниже подробнее. Вот пример постой функции с одним параметром и с вызовом функции:
PHP код:
<I> <?php function tst($str// описание функции { echo $str; // эти три строки являются телом функции $str="OK, done"; return $str; } $str="Привет Вам, это сказал я <BR>"; tst($str); echo $str."<BR>"; ?> </I>
 
Ответить с цитированием

  #2  
Старый 02.07.2008, 18:04
bxN5
Постоянный
Регистрация: 08.01.2006
Сообщений: 865
Провел на форуме:
3279330

Репутация: 343


Отправить сообщение для bxN5 с помощью ICQ
По умолчанию

что то я не понял толком что ты хочешь, ну реализуй класс и используй нужные методы потом
 
Ответить с цитированием

  #3  
Старый 02.07.2008, 18:16
Naydav
Постоянный
Регистрация: 30.12.2006
Сообщений: 434
Провел на форуме:
849583

Репутация: 210
По умолчанию

ChaaK
Цитата:
у меня есть файл с настройками. Пишу админку. Нужна функция изменения параметров.
Вынеси настройки в конфиг типа
Цитата:
'dbhost ':'localhost',
'dbuser':'root',
...
А к файлу конфига обращайся, через методы класса "конфиг"

пс файл конфиг может и так выглядеть
Цитата:
$settings = array(
'dbhost '=>'localhost',
'dbuser'=>'root',
...
);
Тогда проще находить определенный элемент(а также изменять его)
Можно и сеарилизовывать массив, но это уже имхо перебор(правда так легко изменять данные)

А вообще такие все настройки должны храниться в файле формата .xml, это почти идеальный вариант, так ими легко манипулировать
А изменять и получать значения, как я уже говорил нужно через методы класса "конфиг"

Последний раз редактировалось Naydav; 02.07.2008 в 18:19..
 
Ответить с цитированием

  #4  
Старый 02.07.2008, 18:26
Корвин
Участник форума
Регистрация: 26.02.2007
Сообщений: 259
Провел на форуме:
302951

Репутация: 67
Отправить сообщение для Корвин с помощью ICQ
По умолчанию

вот наглядный пример из моей админки, файл site.config

PHP код:

<?
    
class object { };

    
$CFG = new object();
    
$CFG->siterootid=1;
    
$CFG->encoding "windows-1251";
    
$CFG->use_cache false;
    
$CFG->cache_expire_time 3600;
    
$CFG->dir_perms 0755;
    
$CFG->file_perms 0644;
    
$CFG->moduleUploadDir '/module_upload/';
?>
правда я щас только читаю о классах но помоему этого достаточно чтобы его создать
 
Ответить с цитированием

  #5  
Старый 02.07.2008, 20:47
Кубик Рубик
Познающий
Регистрация: 10.04.2008
Сообщений: 51
Провел на форуме:
78866

Репутация: 0
По умолчанию

Здравствуйте! Суть проблемы состоит в этом:
Допустим у нас есть скрипт:
Код:
<html> 
<head> 
<title> Проверка формуляра </title> 
</head> 
<body> 
<center> 
<?php 
echo "Вас зовут ".$_POST['Name']; 
if (!$_POST['Name']) { echo "<br>Заполните форму!"; } ?> 
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> 
<input type="text" size="10" name="Name"> 
<input type="submit" value="запрос!"> 
</form>
 </center> 
</body> 
</html>
Из него видно, что при вводе в форму вашего имени скрипт пишет "Вас зовут, ИМЯ".
Так же стоит проверка формы на заполнение, т.е. если форма пуста скрипт отвечает нам "Заполните форму!".
Проблема состоит в том, что сразу после открытия скрипта он уже упрекает пользователя в том, что он не заполнил форму, да и в добавок выполняет первую строку скрипта (короче вообще весь php код выполняет).
Как сделать так чтобы вся работа скрипта отображалась после нажатия кнопки?
 
Ответить с цитированием

  #6  
Старый 02.07.2008, 20:51
zythar
Moderator - Level 7
Регистрация: 16.02.2008
Сообщений: 580
Провел на форуме:
1595333

Репутация: 291


Отправить сообщение для zythar с помощью ICQ
По умолчанию

PHP код:
<?php 
if (!$_POST['Name']) { 
echo 
"<br>Заполните форму!"
} else {
echo 
"Вас зовут ".$_POST['Name']; 
};
?>
так вроде?
 
Ответить с цитированием

  #7  
Старый 02.07.2008, 20:57
PHPoozy
Участник форума
Регистрация: 01.07.2008
Сообщений: 175
Провел на форуме:
881554

Репутация: 66
По умолчанию

Код:
<?php 
$NAME = isset($_POST['Name']) ? $_POST['Name'] : "";

if($_POST['act'])
{ 
if($NAME){
echo "Вас зовут, $NAME";
}else{
?>
<html> 
<head> 
<title> Проверка формуляра </title> 
</head> 
<body> 
<center> 
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> 
<input type="text" size="10" name="Name"> 
<input type="submit" name="act" value="запрос!"> 
</form>
 </center> 
</body> 
</html>
<?php
}
}
?>

Последний раз редактировалось PHPoozy; 03.07.2008 в 15:57..
 
Ответить с цитированием

  #8  
Старый 02.07.2008, 21:05
Chaak
Познавший АНТИЧАТ
Регистрация: 01.06.2008
Сообщений: 1,047
Провел на форуме:
5321514

Репутация: 3313


Отправить сообщение для Chaak с помощью ICQ
По умолчанию

Кто нибудь может предложить чтонибудь попроще, или привести конкретный, работающий пример?
 
Ответить с цитированием

  #9  
Старый 02.07.2008, 21:09
PHPoozy
Участник форума
Регистрация: 01.07.2008
Сообщений: 175
Провел на форуме:
881554

Репутация: 66
По умолчанию

Цитата:
Кто нибудь может предложить чтонибудь попроще, или привести конкретный, работающий пример?
смотрим вверх =|
 
Ответить с цитированием

  #10  
Старый 02.07.2008, 21:21
PHPoozy
Участник форума
Регистрация: 01.07.2008
Сообщений: 175
Провел на форуме:
881554

Репутация: 66
По умолчанию

ChaaK через инклуд проще

include("./class.admin.php");

после ссылаемся на нужный обжект
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5421 21.04.2026 07:37
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ