Файл в который гружу index.php: PHP: $_GET['p'] = 'new_read'; file_get_contents($site['dir'].'system/main_system.php'); $fp = fopen('../database/news.db', 'a'); fputs($fp, '[id]'.$id2.'[/id]'."\r\n".'[name]'.$_POST['new_them_name'].'[/name]'."\r\n".'[content]'.$_POST['new_them_body'].'[/content]'."\r\n".'[date]'.date('d.m.y').'[/date]'."\r\n"); main_system.php: PHP: case 'new_read': $file = file_get_contents($site['dir'].'database/news.db'); preg_match_all('/\[id\][0-9]+\[\/id\]/', $file, $id); foreach($id as $id2) { $id2 = str_replace('[id]', '', $id2); $id2 = str_replace('[/id]', '', $id2); //echo '<pre>'; var_dump($id2); } ../database/news.db: Code: [id]1[/id] [name]Бородин бомж[/name] [content]А там тыры-пыры, трали-вали...[/content] [date]15-11-2008[/date] [id]2[/id] [name]ЫЫыыЫЫыЫ[/name] [content]Текст всякий темный[/content] [date]14-10-2008[/date] [id][/id] [name]тест[/name] [content]тест[/content] [date]17.11.08[/date] В последний раз id был пустым, т.к. переменную не нашёл Я хочу получить переменную $id2 из news.db, затем записать её же в следующую новость, естьственно, когда всё получится буду плюсовать по одному... Notice: Undefined variable: id2 in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\php\xdf\18\admincp\index.php on line 20 п.с. если юзать инклуд - то добавляется в начало сценария, а та часть кода файла index.php находится в нескольких ифах и т.д.... Подскажите пожалуйста в чё может быть проблемма? спасибо
Это очень похоже на самописную базу данных на основе придуманного языка разметки. Надеюсь, это не так.
предлагаю такую логику: if(!$id2){ ищешь предыдущий; id2++; } да, если не находишь, тогда 0 получается...
ТС, простите, но вы пишете что-то очень страшное: Чем вам не нравится PHP: preg_match_all('#\[id\]([0-9]+)\[/id\]#i',$file,$id); $id2=array_pop($id[1]); Зачем ненужные foreach, и еще - $id2 - будет массивом, в вашем случае. В моем - будет извлечен последний элемент Далее, что вы надеетесь получить file_get_contents'ом кроме текста? Или вы считаете что инклуд может быть только в начале скрипта?
недодумал) текста кажется хватает) а разве нет? - array_pop() раньше не знал)) а зачем ты ставишь модификатор i? он ведь там не нужен)))
Ru}{eeZ ТЕКСТА php скрипта? Заметьте, что переменные вы так не получите, ммм никогда ^^ А только либо ВЫВОД этого скрипта (все echo) или исходный код http://ru2.php.net/manual/ru/function.include.php - читать вдумчиво пример номер 1
1 есть классная фича - eval() 2 хмл нервов больше потреплет - ради чтения можно взять через регекспы. 3 видал как msini устроены? так тоже на пыхе можно ЗЫ мускуль рулит
PHP: $_GET['p'] = 'new_read'; include('../system/main_system.php'); //echo '<pre>'; var_dump($id2); echo '</pre>'; $new_them_id = array_pop($id2); $new_them_id++; $fp = fopen('../database/news.db', 'a'); fputs($fp, '[id]'.$new_them_id.'[/id]'."\r\n".'[name]'.$_POST['new_them_name'].'[/name]'."\r\n".'[content]'.$_POST['new_them_body'].'[/content]'."\r\n".'[date]'.date('d.m.y').'[/date]'."\r\n"); fclose($fp); ...