Jump to content
  • 0

Проблема с самописным движком


Pavel_html
 Share

Question

Вот написал некое подобие движка. Вот код

<?php
function e_list(){
global $out;
$index=$articles[33]["body"];
$out["center"].="$index";
}

function e_show(){
global $out, $articles;
$id=$_GET["id"];
$name=$articles[$id]["title"];
$body=$articles[$id]["body"];
$out["title"].="$name";
$out["center"].="<p>$body</p>";
}
$txt1=file_get_contents("beach3.txt");
$txt2=file_get_contents("beach4.txt");
$txt3=file_get_contents("beach-f4.txt");
$txt4=file_get_contents("beach-f6.txt");
$txt5=file_get_contents("beach-f5.txt");
$txt6=file_get_contents("beach-f7.txt");
$txt7=file_get_contents("beach-f8.txt");
$txt8=file_get_contents("beach-f9.txt");
$txt9=file_get_contents("beach-f10.txt");
$txt10=file_get_contents("beach-f11.txt");
$txt11=file_get_contents("beach-f12.txt");
$txt12=file_get_contents("beach-f13.txt");
$txt13=file_get_contents("beach-f14.txt");
$txt14=file_get_contents("beach-f15.txt");
$txt15=file_get_contents("beach-f16.txt");
$txt16=file_get_contents("beach-f17.txt");
$txt17=file_get_contents("beach-f18.txt");
$txt18=file_get_contents("beach-f19.txt");
$txt19=file_get_contents("beach-f20.txt");
$txt20=file_get_contents("beach-f21.txt");
$txt21=file_get_contents("beach-f22.txt");
$txt22=file_get_contents("beach-f23.txt");
$txt23=file_get_contents("beach-f24.txt");
$txt24=file_get_contents("beach-f31.txt");
$txt25=file_get_contents("beach-f26.txt");
$txt26=file_get_contents("beach-f27.txt");
$txt27=file_get_contents("beach-f28.txt");
$txt28=file_get_contents("beach-f29.txt");
$txt29=file_get_contents("beach-f30.txt");
$txt30=file_get_contents("beach-f25.txt");
$txt32=file_get_contents("kontakt.txt");
$txt33=file_get_contents("index.txt");
$txt34=file_get_contents("news1.txt");
$txt35=file_get_contents("news2.txt");
$txt36=file_get_contents("news3.txt");
$txt37=file_get_contents("news4.txt");
$articles=array();
$articles[1]["title"]='О нас';
$articles[1]["body"]=$txt1;
$articles[2]["title"]='Наши звери';
$articles[2]["body"]=$txt2;
$articles[3]["title"]='Носуха обыкновеная';
$articles[3]["body"]=$txt3;
$articles[4]["title"]='Енотовидная собака';
$articles[4]["body"]=$txt4;
$articles[5]["title"]='Енот-полоскун';
$articles[5]["body"]=$txt5;
$articles[6]["title"]='Яванский макак-крабоед ';
$articles[6]["body"]=$txt6;
$articles[7]["title"]='Агути оливковый';
$articles[7]["body"]=$txt7;
$articles[8]["title"]='Хорь декоративный';
$articles[8]["body"]=$txt8;
$articles[9]["title"]='Еж ушастый';
$articles[9]["body"]=$txt9;
$articles[10]["title"]='Кролик карликовый';
$articles[10]["body"]=$txt10;
$articles[11]["title"]='Шиншила обыкновеная';
$articles[11]["body"]=$txt11;
$articles[12]["title"]='Ара зел?нокрылый';
$articles[12]["body"]=$txt12;
$articles[13]["title"]='Черноголовая аратинга';
$articles[13]["body"]=$txt13;
$articles[14]["title"]='Патогонский попугай';
$articles[14]["body"]=$txt14;
$articles[15]["title"]='Ожереловый попугай';
$articles[15]["body"]=$txt15;
$articles[16]["title"]='Волнистый попугай';
$articles[16]["body"]=$txt16;
$articles[17]["title"]='Неразлучники Фишера';
$articles[17]["body"]=$txt17;
$articles[18]["title"]='Неразлучник масковый';
$articles[18]["body"]=$txt18;
$articles[19]["title"]='Неразлучник розовощекий';
$articles[19]["body"]=$txt19;
$articles[20]["title"]='Неясыть длиннохвостая';
$articles[20]["body"]=$txt20;
$articles[21]["title"]='Сова ушастая';
$articles[21]["body"]=$txt21;
$articles[22]["title"]='Ворона обыкновеная';
$articles[22]["body"]=$txt22;
$articles[23]["title"]='Ворон обыкновеный';
$articles[23]["body"]=$txt23;
$articles[24]["title"]='Тритон испанский';
$articles[24]["body"]=$txt24;
$articles[25]["title"]='Лягушка шпроцевая';
$articles[25]["body"]=$txt25;
$articles[26]["title"]='Черепаха средеазиатская';
$articles[26]["body"]=$txt26;
$articles[27]["title"]='Черепаха болотная';
$articles[27]["body"]=$txt27;
$articles[28]["title"]='Черепаха красноухая';
$articles[28]["body"]=$txt28;
$articles[29]["title"]='Трионикс';
$articles[29]["body"]=$txt29;
$articles[30]["title"]='Наши юннаты';
$articles[30]["body"]=$txt30;
$articles[31]["title"]='Гостевая';
$articles[31]["body"]=$txt31;
$articles[32]["title"]='Контакт';
$articles[32]["body"]=$txt32;
$articles[33]["title"]='Главная';
$articles[33]["body"]=$txt33;
$articles[34]["title"]='Новости';
$articles[34]["body"]=$txt34;
$articles[35]["title"]='Новости';
$articles[35]["body"]=$txt35;
$articles[36]["title"]='Новости';
$articles[36]["body"]=$txt36;
$articles[37]["title"]='Новости';
$articles[37]["body"]=$txt37;
$out=array();
$out["title"]=$articles[$id]["title"];
$out["center"]=' ';

$tpl=<<<END
<html>
<head>
<link rel="stylesheet" type="text/css" href="css/styles.css"/>
<title><!-title-></title>
</head>
<body text="#000000" background="fon.gif">
<img src="images/logo.gif" id="header">
<div class="main">
<img src="images/menu.jpg" usemap="#menu">
<map name="menu">
<area shape="rect" coords="18,27,135,58" href="?action=list">
<area shape="rect" coords="188,29,313,59" href="?action=show&id=1">
<area shape="rect" coords="370,29,485,59" href="?action=show&id=2">
<area shape="rect" coords="537,28,655,58" href="?action=show&id=30">
<area shape="rect" coords="707,29,829,60" href="http://clubunnatov.forumcity.com">
</map>
<!-center->
</div>
</body>
</html>
END;
if(!isset($_GET["action"])){
$_GET["action"]='list';
}
switch ($_GET["action"]){
case "show":
e_show();
break;
case "list":
e_list();
default;
break;
}
$ar=array(
"<!-title->"=>$out["title"],
"<!-center->"=>$out["center"]
);
print str_replace(array_keys($ar),array_values($ar),$tpl);
?>

Проблема в том, что на главной странице НЕЧЕГО не отображается. По главной странице у меня функция e_list().

Link to comment
Share on other sites

19 answers to this question

Recommended Posts

  • 0
По главной странице у меня функция e_list().

ты так в этом уверен? если это подобие писал сам, а не копировал откуда-то, без труда скажешь номер строки, с которой вызывается эта функция для главной страницы. если скажешь правильно - подскажу ошибки

Link to comment
Share on other sites

  • 0
Функция вызывается только тогда, когда производится запрос ?action=list

еще раз попробую пояснить что хочется услышать:

на. какой. строке. приведенного. выше. кода. определяется. что. запрос. был. именно. таким. и. потому. необходимо. вызвать. эту. функцию?

например: сколько ты ни обращайся к скрипту вида <?php echo('Hello, balbes!'); ?> с этим запросом, он ничего не сделает, потому что там нет обработки такого запроса.

если и на этот раз не дошло, уже ничего не поделать.

Link to comment
Share on other sites

  • 0

серьезно? ответ неверный.

76: $articles[12]["body"]=$txt12;

77: $articles[13]["title"]='Черноголовая аратинга';

если предположить что считалось не с начала, отбросив <?php, выходит все равно не правильно.

76: $articles[13]["title"]='Черноголовая аратинга';

77: $articles[13]["body"]=$txt13;

Link to comment
Share on other sites

  • 0

ага, ну правильно тогда. не безнадежен значит:+)

теперь на пальцах:

switch(переменная) {

// первое понятие...
case(одно возможное значение):
блок операций при выполнении равенства переменная == одно возможное значение
break; // прерывание цикла вычислений, т.е. дальнейшие сравнения переменной с вариантами case не производится
case(другое возможное значение):
блок операций при выполнении равенства переменная == другое возможное значение
break; // аналогично прерывание цикла вычислений, т.е. дальнейшие сравнения переменной с вариантами case не производится

// второе понятие...
case(значение 3):
блок операций "M" при выполнении условия...
case(значение 4):
блок операций "N" при выполнении условия...
break;
// а здесь поскольку после блока М не стоит прерывание, при выполнении условия переменная == значение 3 будет выполнен также блок N
//соответственно при равенстве переменной значению 4 - только блок N
// также блока М может попросту не быть, если блок N одинаково требуется выполнить при значениях 3 и 4, будет просто case(значение 3): case(значение 4): ... break;
// таких условий может быть сколько угодно в различных комбинациях

// ну и последнее понятие...
default:
блок операций, выполняемый если не совпало ни одно условие
break; // хотя здесь прерывание необязательно, цикл так и так закончился.
}

ну и посмотри теперь внимательно на свой код - вместо двоеточия после дефолта стоит точка с запятой. а даже если исправишь, все равно там не вписано совершенно ничего, что должно произойти по умолчанию.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy