требуется скрипт который будет редактировать данные конфиг файла, так называемый админ файл нужен!
данные в файле который нужно редактировать в таком виде храняться
$datapath = "/var/www/u0/.../.../.../";
Спустя 4 минуты, 15 секунд (19.10.2010 - 13:54) arvitaly написал(а):
Чем помочь то?
Спустя 1 минута, 48 секунд (19.10.2010 - 13:56) mihai написал(а):
Видимо материально.
Спустя 30 секунд (19.10.2010 - 13:56) White_Lad написал(а):
arvitaly
как это сделать ? :-[
как это сделать ? :-[
Спустя 1 минута, 4 секунды (19.10.2010 - 13:57) White_Lad написал(а):
mihai
не материально не надо! мне надо только понять как это скрипт написать чтоб он редактировал конфиг файл
не материально не надо! мне надо только понять как это скрипт написать чтоб он редактировал конфиг файл
Спустя 9 минут, 31 секунда (19.10.2010 - 14:07) arvitaly написал(а):
file_put_contents('config.php',$data);
я хз чем еще помочь
Спустя 11 секунд (19.10.2010 - 14:07) Michael написал(а):
Посмотри функцию parse_ini_file - чтение конфигурации она обеспечит.
А записывать под этот формат проще простого - циклом по массиву.
А записывать под этот формат проще простого - циклом по массиву.
Спустя 4 минуты, 12 секунд (19.10.2010 - 14:11) White_Lad написал(а):
Michael
а можете подробнее описать ?
лучше примером
а можете подробнее описать ?
лучше примером
Спустя 2 минуты, 21 секунда (19.10.2010 - 14:13) Michael написал(а):
Цитата (White_Lad @ 19.10.2010 - 13:11) |
Michael а можете подробнее описать ? лучше примером |
Спустя 6 минут, 19 секунд (19.10.2010 - 14:20) White_Lad написал(а):
Michael
эта функция только показывает... а мне надо редактировать
или я чето не понял ?
эта функция только показывает... а мне надо редактировать
или я чето не понял ?
Спустя 9 минут, 46 секунд (19.10.2010 - 14:29) Michael написал(а):
Ну смотри, у тебя данные будут храниться например так:
ты их подгрузил parse_ini_file в массив и пробегом по массиву вывел на редактирование.
После редактирования эти данные оказались в массиве(обновленные) и тебе чтобы их записать в файл надо просто пробежаться по массиву и построчно записать в файл значения.
Это мне кажется легче чем ты собрался парсить файл.
[first_section]
one = 1
five = 5
animal = BIRD
[second_section]
path = /usr/local/bin
URL = "http://www.example.com/~username"
ты их подгрузил parse_ini_file в массив и пробегом по массиву вывел на редактирование.
После редактирования эти данные оказались в массиве(обновленные) и тебе чтобы их записать в файл надо просто пробежаться по массиву и построчно записать в файл значения.
Это мне кажется легче чем ты собрался парсить файл.
Спустя 20 секунд (19.10.2010 - 14:30) White_Lad написал(а):
я может не правильно выразился ... мне нужно сделать подобное , смысл тот же...
пример
т.е. открывается страница... там поля ... пишешь что то в поле и сохраняешь!
пример
т.е. открывается страница... там поля ... пишешь что то в поле и сохраняешь!
Спустя 1 минута, 36 секунд (19.10.2010 - 14:31) White_Lad написал(а):
Michael
а как вывести на редактирование ?
а как вывести на редактирование ?
Спустя 2 минуты, 48 секунд (19.10.2010 - 14:34) Michael написал(а):
Ты что просто в textarea хочешь загрузить конфиг на редактирование и потом изменения сохранить?
Спустя 4 минуты, 39 секунд (19.10.2010 - 14:39) White_Lad написал(а):
ну если я правильно понял... то да
это будет как на том скрине что я в предыдущем посте показал ?
это будет как на том скрине что я в предыдущем посте показал ?
Спустя 10 минут, 56 секунд (19.10.2010 - 14:50) Michael написал(а):
тот скрин не грузится
Спустя 2 минуты, 32 секунды (19.10.2010 - 14:52) White_Lad написал(а):
Спустя 15 минут, 39 секунд (19.10.2010 - 15:08) Michael написал(а):
Значит все таки не textarea, а по отдельности. И это верно.
1) Загружай данные как я первый раз говорил - в массив
2) У тебя должен быть шаблон формы
3) Выводи в этот шаблон переменные из массива
4) пиши обработчик сабмита формы - измененные данные в массив помещай
5) записывай в файл данные из массива.
1) Загружай данные как я первый раз говорил - в массив
2) У тебя должен быть шаблон формы
3) Выводи в этот шаблон переменные из массива
4) пиши обработчик сабмита формы - измененные данные в массив помещай
5) записывай в файл данные из массива.
Спустя 4 минуты, 57 секунд (19.10.2010 - 15:13) White_Lad написал(а):
ни хрена непонял
я повторюсь... я 0 (ноль) в php
Михаил можешь мне все по полочкам разложить как первокласснику ?
я повторюсь... я 0 (ноль) в php
Михаил можешь мне все по полочкам разложить как первокласснику ?
Спустя 7 минут, 4 секунды (19.10.2010 - 15:20) Michael написал(а):
Цитата (White_Lad @ 19.10.2010 - 14:13) |
ни хрена непонял я повторюсь... я 0 (ноль) в php |
ну так учись. Смысл мне тебе объяснять если ты не понимаешь даже элементарные вещи. Просто время свое убью, и тебе пользы не будет.
Начни отсюда
Спустя 16 минут, 2 секунды (19.10.2010 - 15:36) White_Lad написал(а):
Цитата (Michael @ 19.10.2010 - 12:08) |
Значит все таки не textarea, а по отдельности. И это верно. 1) Загружай данные как я первый раз говорил - в массив 2) У тебя должен быть шаблон формы 3) Выводи в этот шаблон переменные из массива 4) пиши обработчик сабмита формы - измененные данные в массив помещай 5) записывай в файл данные из массива. |
т.е.
1) подгружаем файл conf.ini (c помощью parse_ini_file ) в массив.. получаем
Array (
[domen] => site.ru
[path] => /var/www/
[nazvanie] => blabla )
Array (
[first_section] => Array (
[domen] => site.ru
[path] => /var/www/
[nazvanie] => blabla ) )
2) есть форма
<title>форма</title>
</head>
<body>
<form action="">
<fieldset>
<legend>
заполняем
</legend>
<input type="text" size="20" /> <small>путь</small><br />
<input type="text" size="20" /> <small>домен</small><br />
<input type="text" size="20" /> <small>название</small><br />
<input type="submit" value="Отправить" />
</fieldset>
</form>
3) как это сделать ?
4) как это сделать ?
5) как это сделать ?
Спустя 19 часов, 34 минуты, 29 секунд (20.10.2010 - 11:10) White_Lad написал(а):
может ктонить другой поможет ? Михаил перестал отвечать видимо он устал
Спустя 16 минут, 22 секунды (20.10.2010 - 11:27) Basili4 написал(а):
White_Lad
Судя по всему единственный способ тебе помочь это сделать за тебя. А это в раздел проекты. с указанием цены. Michael указал направление. Далее или сам или в с указанием цены.
Судя по всему единственный способ тебе помочь это сделать за тебя. А это в раздел проекты. с указанием цены. Michael указал направление. Далее или сам или в с указанием цены.
Спустя 5 минут, 49 секунд (20.10.2010 - 11:33) White_Lad написал(а):
Basili4
нет... сделать за меня это не единственный выход!
мне хотя бы какие то ссылочки в помощь может дадите на 3 4 5 пункты ?
а то я искал искал и ни чего не нашел !
нет... сделать за меня это не единственный выход!
мне хотя бы какие то ссылочки в помощь может дадите на 3 4 5 пункты ?
а то я искал искал и ни чего не нашел !
Спустя 10 минут, 26 секунд (20.10.2010 - 11:43) Basili4 написал(а):
White_Lad
Как это сделать человек у которого нет базы объяснить нельзя (или очень трудно) это проще сделать самому.
Хочешь научится нарабатывай базу. Можешь начать с ссылки которую тебе дали выше.
Как это сделать человек у которого нет базы объяснить нельзя (или очень трудно) это проще сделать самому.
Хочешь научится нарабатывай базу. Можешь начать с ссылки которую тебе дали выше.
Спустя 3 минуты, 33 секунды (20.10.2010 - 11:47) White_Lad написал(а):
т.е. человеку без базы нельзя дать ссылки ?!
Спустя 1 час, 25 минут, 10 секунд (20.10.2010 - 13:12) Basili4 написал(а):
White_Lad
Куда. ??? в свою голову.
Куда. ??? в свою голову.
Спустя 1 час, 7 минут, 27 секунд (20.10.2010 - 14:19) Xpund написал(а):
Ещё не забыть chmod 777 установить!
Спустя 15 минут, 35 секунд (20.10.2010 - 14:35) mihai написал(а):
Он хочет посмотреть как это выглядит на пример.
А потом просто списать.
Для это хотя бы в Яндексе можно набрать
"РНР уроки в примерах"
А потом просто списать.
Для это хотя бы в Яндексе можно набрать
"РНР уроки в примерах"
Спустя 1 день, 21 час, 18 минут, 15 секунд (22.10.2010 - 11:53) White_Lad написал(а):
ну конечно как же над неопытным не постебаться
у меня вот что получилось:
index.php
obr.php
и сам конфиг (config.php)
но когда заходишь на index.php в полях стоят переменные а не их значения как это исправить ?
у меня вот что получилось:
index.php
<html>
<head>
<title>config</title>
</head>
<body>
<? include 'config.php'; ?>
<center><B>Конфигурирование</b></font>
<form action=obr.php method=post name=REPLIER>
<table><tr>
<th>Параметр</th>
<th>Значение</th></tr>
<tr><td class=row1>Название</td><td class=row1><input type=text value="$fname" name="fname" class=post maxlength=50 size=50></tr></td>
<tr><td class=row1>Путь</td><td class=row1><input type=text value="$path" name="path" class=post maxlength=50 size=50></tr></td>
</select></tr></td><tr><td class=row1 colspan=2><BR><center><input type=submit class=mainoption value="Сохранить конфигурацию"></form></td></tr></table>
<br>
<center></body>
</html>
obr.php
<?
include "config.php";
$configdata="<? \r\n
"."$"."fname=\"".$_POST['fname']."\";
"."$"."path=\"".$_POST['path']."\"; \r\n?>";
$file=file("config.php");
$fp=fopen("config.php","a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
fputs($fp,$configdata);
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
Header("Location: index.php"); exit;
?>
и сам конфиг (config.php)
<?
$fname="";
$path="";
?>
но когда заходишь на index.php в полях стоят переменные а не их значения как это исправить ?
Спустя 8 минут, 53 секунды (22.10.2010 - 12:02) T1grOK написал(а):
А система угадывать должна где у тебя html, а где php?
Php-код нужно отделять дескрипторами. То есть:
ну и так далее.
Php-код нужно отделять дескрипторами. То есть:
value=<?=$fname?>
ну и так далее.
Спустя 1 минута, 39 секунд (22.10.2010 - 12:04) White_Lad написал(а):
че так ругаться то )) понял спасибо
Спустя 14 минут, 56 секунд (22.10.2010 - 12:19) White_Lad написал(а):
а еще вопрос .. данные выводятся до первого пробела т.е. если пишем "форум php" то в поле будет отображаться только "форум"
но в конфиг сохраняется полностью
но в конфиг сохраняется полностью
Спустя 2 часа, 20 минут, 39 секунд (22.10.2010 - 14:39) Michael написал(а):
Вот накидал:
<?php
define("FI", './xxx.ini'); // путь к файлу настроек
$ini = NULL;
if (isset($_POST['change'])) { // Если поступил запрос на изменение данных, то
// изменяем
$ini = array();
$ini['one'] = $_POST['one'];
$ini['five'] = $_POST['five'];
$ini['animal'] = $_POST['animal'];
// сохраняем изменения в файл
$s = '';
foreach ($ini as $k=>$v) {
$s .= $k . ' = ' . $v . PHP_EOL;
}
file_put_contents(FI, $s);
}
if (!$ini) {
// подгружаем настройки из файла
$ini = parse_ini_file(FI);
}
//echo '<pre>' . print_r($ini, true) . '</pre>';
?>
<form method="post" name="form1">
<input type="text" name="one" value="<?php echo htmlspecialchars($ini['one']); ?>">
<input type="text" name="five" value="<?php echo htmlspecialchars($ini['five']); ?>">
<input type="text" name="animal" value="<?php echo htmlspecialchars($ini['animal']); ?>">
<input type="submit" name="change" value="Изменить" >
</form>
Спустя 34 минуты, 38 секунд (22.10.2010 - 15:14) Michael написал(а):
Понял какой формат xxx.ini?
Просто три строки:
Просто три строки:
one = 1
five = 2
animal = bird
Спустя 1 минута, 7 секунд (22.10.2010 - 15:15) White_Lad написал(а):
дада ! спасибо!
Спустя 1 день, 1 час, 9 минут, 34 секунды (23.10.2010 - 16:24) White_Lad написал(а):
еще вопрос .. данные выводятся до первого пробела т.е. если пишем "форум php" то в поле будет отображаться только "форум"
но в конфиг сохраняется полностью
но в конфиг сохраняется полностью
Спустя 20 часов, 59 минут, 17 секунд (24.10.2010 - 13:24) White_Lad написал(а):
ни кто не знает чтоли ?
Спустя 1 минута, 31 секунда (24.10.2010 - 13:25) AlmazDelDiablo написал(а):
$peremennaja = "форум php";
или
$peremennaja = "форум" . "php";
Спустя 9 минут, 56 секунд (24.10.2010 - 13:35) White_Lad написал(а):
у меня так и написанно
но выводит в форме
только слово "форум"
$peremennaja = "форум php";
но выводит в форме
<input type="text" size="100px" name="peremennaja" value=<?=$peremennaja?> >
только слово "форум"
Спустя 31 минута, 20 секунд (24.10.2010 - 14:07) Romms написал(а):
когда пишешь в конфиг(или что таи у тебя) то заключай значения параметра в скобки ""
Спустя 16 минут, 8 секунд (24.10.2010 - 14:23) White_Lad написал(а):
оно в скобках
Спустя 3 минуты, 35 секунд (24.10.2010 - 14:26) Romms написал(а):
Код в студию!
(файл что пишет, и сам конфиг)
(файл что пишет, и сам конфиг)
Спустя 6 минут (24.10.2010 - 14:32) White_Lad написал(а):
форма
обработчик
конфиг
<tr> <td>Заголовок</td> </tr>
<tr> <td height="24"><input type="text" size="100px" name="title" value="<?=$title ?>"></td> </tr>
обработчик
<? include "config.php";
$configdata="<? \r\n
"."$"."title=\"".$_POST['title']."\";
"."$"."key=\"".$_POST['key']."\" \r\n?>";
$file=file("config.php");
$fp=fopen("config.php","a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
fputs($fp,$configdata);
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
Header("Location: admin.php");
exit;
?>
конфиг
$title="форум php";
Спустя 45 минут, 30 секунд (24.10.2010 - 15:18) Romms написал(а):
1. ты пишешь файл
а там почему то только
$configdata="<? \r\n
"."$"."title=\"".$_POST['title']."\";
"."$"."key=\"".$_POST['key']."\" \r\n?>";
а там почему то только
Цитата |
$title="форум php"; |
Вопрос очевиден.
2. Покажи как ты читаешь с файла(код скрипта напиши)
Спустя 5 минут, 14 секунд (24.10.2010 - 15:23) White_Lad написал(а):
1) убрал некоторые строчки из кода
2)
вот весь код файла с формами
2)
<? include 'config.php'; ?>
вот весь код файла с формами
<html>
<head>
<title>config</title>
</head>
<body>
<? include 'config.php'; ?><center>
<p> </p>
<table width="700" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><div align="center"><a href="./admin.php">Конфигурирование</a> <a href="./access.php">Смена
пароля</a> <a href="./logout.php">Выход</a></div></td>
</tr>
</table>
<p> </p>
<table width="700" border="0" align="center" >
<form action=obr.php method=post name=REPLIER>
<tr> <td>Домен</td> </tr>
<tr> <td height="24"><input type="text" size="100px" name="domen" value="<?=$domen?>"></td> </tr>
<tr> <td>Заголовок</td> </tr>
<tr> <td height="24"><input type="text" size="100px" name="title" value="<?=$title ?>"></td> </tr>
<tr> <td>Путь до папки data</td> </tr>
<tr> <td><input type="text" size="100px" name="datapath" value="<?=$datapath?>"></td> </tr>
<tr> <td>Путь (web)</td> </tr>
<tr> <td><input type="text" size="100px" name="webpath" value=<?=$webpath?> ></td> </tr>
<tr> <td>Ключи</td> </tr>
<tr> <td><input type="text" size="100px" name="key" value=<?=$key?> ><br><br></td> </tr>
<tr> <td><input type="submit" name="change" value="Изменить" ><br>
</form>
</td>
</tr>
</table>
<br>
<center></body>
</html>
Спустя 6 минут, 42 секунды (24.10.2010 - 15:30) Romms написал(а):
дай полные код конфига
и чистый ХТМЛ код "файла с формами"
и чистый ХТМЛ код "файла с формами"
Спустя 8 минут, 31 секунда (24.10.2010 - 15:38) White_Lad написал(а):
файл с формами выше
вот конфиг
вот конфиг
<?
$domen="site.ru";
$webpath="http://site.ru";
$datapath="/var/www/http://";
$title="Оборудование для";
$key="12345 в $fp[$sub], "
?>
Спустя 4 минуты, 59 секунд (24.10.2010 - 15:43) Romms написал(а):
HTML!!!
Спустя 2 минуты, 13 секунд (24.10.2010 - 15:45) White_Lad написал(а):
какой html?? какие есть файлы все дал
Спустя 1 минута, 9 секунд (24.10.2010 - 15:47) Michael написал(а):
Сделай:
size=20
а то, size="100px" - неверно.
size=20
а то, size="100px" - неверно.
Спустя 57 секунд (24.10.2010 - 15:48) White_Lad написал(а):
обработчик вот еще
<? include "config.php";
$configdata="<? \r\n
"."$"."domen=\"".$_POST['domen']."\";
"."$"."webpath=\"".$_POST['webpath']."\";
"."$"."datapath=\"".$_POST['datapath']."\";
"."$"."title=\"".$_POST['title']."\";
"."$"."key=\"".$_POST['key']."\" \r\n?>";
$file=file("config.php");
$fp=fopen("config.php","a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);
fputs($fp,$configdata);
fflush ($fp);
flock ($fp,LOCK_UN);
fclose($fp);
Header("Location: admin.php");
exit;
?>
Спустя 2 минуты, 58 секунд (24.10.2010 - 15:50) White_Lad написал(а):
Michael
так это же просто размер .. он ни как не влияет на отображение
так это же просто размер .. он ни как не влияет на отображение
Спустя 2 минуты, 50 секунд (24.10.2010 - 15:53) Michael написал(а):
Цитата (White_Lad @ 24.10.2010 - 14:50) |
Michael так это же просто размер .. он ни как не влияет на отображение |
все равно не порядок.
ну тут:
<p> </p>
впиши:
<p><?php echo '|' . $title . '|'; ?> </p>
- что между | | будет?
Спустя 2 минуты, 28 секунд (24.10.2010 - 15:56) Romms написал(а):
White_Lad, еще как влияет))
White_Lad, если верить всему тому что ты написал то всё должно работать... может перезагрузи сервера?)
White_Lad, если верить всему тому что ты написал то всё должно работать... может перезагрузи сервера?)
Спустя 22 минуты, 11 секунд (24.10.2010 - 16:18) Michael написал(а):
Чето долго ты одну строчку вставляешь... Мне сейчас уходить.
Спустя 5 минут, 26 секунд (24.10.2010 - 16:23) White_Lad написал(а):
Цитата (Michael @ 24.10.2010 - 12:53) |
<p><?php echo '|' . $title . '|'; ?> </p> - что между | | будет? |
там
|Оборудование для пенопласта в кирове и области |
т.е. вся строка из конфига
стал нормально отображаться Заголовок. все слова всмысле
а вот ключи все так же
Спустя 1 минута, 44 секунды (24.10.2010 - 16:25) White_Lad написал(а):
Цитата (Michael @ 24.10.2010 - 13:18) |
Чето долго ты одну строчку вставляешь... Мне сейчас уходить. |
пришлось уехать не на долго!
Спустя 59 секунд (24.10.2010 - 16:26) Michael написал(а):
Формат ключам смени. Вместо:
пиши:
$key="12345 в $fp[$sub], "
пиши:
$key="12345 в {$fp[$sub]}, "
Спустя 26 минут, 59 секунд (24.10.2010 - 16:53) White_Lad написал(а):
разобрался )
было
а надо было
было
value=<?=$key ?>
а надо было
value="<?=$key ?> "