Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [PHP]Cтатьи


Автор: Tony_Bil 7.9.2008, 18:47
Помогите пожалуста написать программу:
На сервере хранится несколько текстовых ресурсов ("статей"). Написать сценарий, который формирует страницу, которая для каждой статьи содержит два линки: один позволяет перейти к ней, а другой – отредактировать с помощью формы.

Автор: Tony_Bil 14.9.2008, 14:49
Я написал код, но у меня почемуто не работает Edit. У меня файлы:
article1.txt
article2.txt
article3.txt
edit_1.php
Код

<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<title>Article 1 : edit mode</title>
</head>
<body bgcolor="white">
<?php
$filename="article1.txt";
include("edit_engine.txt");
?>
<br>
<a href="editor.html">List of articles</a>
</body>
</html>

edit_2.php
Код

<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<title>Article 2 : edit mode</title>
</head>
<body bgcolor="white">
<?php
$filename="article2.txt";
include("edit_engine.txt");
?>
<br>
<a href="editor.html">List of articles</a>
</body>
</html>

edit_3.php
Код

<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<title>Article 3 : edit mode</title>
</head>
<body bgcolor="white">
<?php
$filename="article3.txt";
include("edit_engine.txt");
?>
<br>
<a href="editor.html">List of articles</a>
</body>
</html>

edit_engine.txt
Код

<form method="GET">
<input type="text" size="100" value="<? readfile ($filename) ?>" name="nm">
<input type="submit" value="Apply changes">
</form>
<?
   if ($nm)
{
   $fd = fopen ($filename , "w") or die ("Can't open $filename") ;
   fwrite ($fd , $nm) ;
   fclose($fd) ;
}
?> 

editor.html
Код

<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<title> List of articles </title>
</head>
<body bgcolor="white">
Article 1. <a href="read_1.php">Read</a>/<a href="edit_1.php">Edit</a><br>
Article 2. <a href="read_2.php">Read</a>/<a href="edit_2.php">Edit</a><br>
Article 3. <a href="read_3.php">Read</a>/<a href="edit_3.php">Edit</a><br>
</body>
</html>

read_1.php
Код

<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<title>Article 1 : read mode</title>
</head>
<body bgcolor="white">
<?php
readfile("article1.txt");
?>
<br>
<a href="editor.html">List of articles</a>
</body>
</html>

read_2.php
Код

<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<title>Article 2 : read mode</title>
</head>
<body bgcolor="white">
<?php
readfile("article2.txt");
?>
<br>
<a href="editor.html">List of articles</a>
</body>
</html>

read_3.php
Код

<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<title>Article 3 : read mode</title>
</head>
<body bgcolor="white">
<?php
readfile("article3.txt");
?>
<br>
<a href="editor.html">List of articles</a>
</body>
</html>

У меня ошыбка Undefined variable: nm in edit_engine.txt on line 7

Автор: SneG0K 14.9.2008, 22:35
Цитата(Tony_Bil @  14.9.2008,  13:49 Найти цитируемый пост)
Undefined variable: nm in edit_engine.txt on line 7 

Неизвестная переменная: nm в edit_engine.txt в строке 7

Что такое переменная $nm в файле edit_engine.txt?
Код

 if ($nm)
 
 С какого потолка ты выдрал эту переменную? Может стоит ее сначала проинициализировать?
Код

$nm=$_GET['nm'];


И на кой выкладывать сорцы всех файлов? А если бы там было 1000 файлов, ты бы и их все выложил? Учись искать ошибку сам!!! А для этого учи английский!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)