[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Правильно ли написан код?
Страницы: 1, 2, 3, 4, 5, 6, 7
Zzepish
Если у него не 100500 email'ов, или каких-то других полей(т.е.свзь один ко многим), то можно все пихать в одну таблицу
Эли4ка
Цитата
Не дурите человеку голову массивами. В данном случае switch() предпочтительнее. Сама компановка не совсем красивая, но от массива потом головняков больше будет.

twin,я имела ввиду защиту от массивов,а вы про что?
twin
Ну допустим потребовалось несколько страниц сделать приватными.

Я знаю решение, но оно разве будет оптимальным?

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
casper - gg
user posted image

В том варианте, что от меня был, страница с ссылкой на 'idx' не включатся по какой-то причине и может быть по той, что на главной этот индекс не отображается (например с помощью .htaccess), а значит вот так нужно переписать:

с этого:

$pages = array( 'indx', 'about', 'faq', ...etc );

if( in_array($page, $pages) )
...



на это:

$pages = array( ' ', 'about', 'faq', ...etc );

if( in_array($page, $pages) )
...



то есть вместо 'idx' должна быть пустота.

От самостоятельного нахождении ошибок многому научитесь. А с массивами, зуб даю - запутаетесь на этом этапе.
Zzepish
casper - gg
а что там путаться) просто главное понимать, что массив - контейнер, с ключами) и все)
casper - gg
Цитата (Zzepish @ 2.03.2016 - 21:47)
а что там путаться) просто главное понимать, что массив - контейнер, с ключами) и все)


на начальном этапе это не так и просто может оказаться, уже зависит от способностей каждого лично.
Astin
Цитата (Zzepish @ 2.03.2016 - 15:00)
Если у него не 100500 email'ов, или каких-то других полей(т.е.свзь один ко многим), то можно все пихать в одну таблицу

Zzepish
По моему это не правильно пихать все в одну таблицу. Хотя может и ошибаюсь.

Есть Но.....

А вот если пользователь не одну заявку добавит а несколько, и при этом будет одна таблица,
Как я тогда буду идентифицировать заявки пользователей?
Получится каша просто напросто
Astin
Цитата (casper - gg @ 2.03.2016 - 20:26)
user posted image

В том варианте, что от меня был, страница с ссылкой на 'idx' не включатся по какой-то причине и может быть по той, что на главной этот индекс не отображается (например с помощью .htaccess), а значит вот так нужно переписать:

с этого:

$pages = array( 'indx', 'about', 'faq', ...etc );

if( in_array($page, $pages) )
...



на это:

$pages = array( ' ', 'about', 'faq', ...etc );

if( in_array($page, $pages) )
...



то есть вместо 'idx' должна быть пустота.

От самостоятельного нахождении ошибок многому научитесь. А с массивами, зуб даю - запутаетесь на этом этапе.

casper - gg

Сейчас попробую как вы написали и отпишусь работает или нет
Astin
casper - gg

Не работает по вашему, и пустую строку оставил, и пробовал ее вообще убрать, не работает
главная страница, то есть показывается все что выводится на главной, го без стилей, тила,
описания, короче то что задано в switch для главной. А вот остальные страницы отображаются
нормально.

Главная страница работает только при таком условии

// Если page не передана, то отображать indx
if(!isset($_GET['page'])){
$page = 'indx';
}
casper - gg
Вот так значит:



$pages = array( 'about', 'faq', ...etc );

// Если page не передана, то отображать indx
if( !isset($_GET['page']) ){
$page = 'indx';
}
elseif( in_array($_GET['page'], $pages ) ){
$page = $_GET['page'];
}
else{
редирект на страницу ушибки (404)
}

...тело скрипта

Astin
casper - gg

Спасибо большое за пример.

Кстати, сейчас пытался зайти на форум и выходила ошибка, на любую страницу форума
пытаюсь перейти и показывал белый экран с ошибкой, а через пару-тройку минут
все стало нормально
Astin
casper - gg

Ваш пример кода работает отлично
casper - gg
в php все работает отлично, если это предусмотреть ). Главное не забудьте 404 страницу создать (404.html) где-то в корне с текстом -"такой страницы не существует"
Astin
Цитата (casper - gg @ 3.03.2016 - 08:58)
в php все работает отлично, если это предусмотреть ). Главное не забудьте 404 страницу создать (404.html) где-то в корне с текстом -"такой страницы не существует"

casper - gg
Уже сделал, но пока какие то стили к страничке 404 не применял, позже оформлю как надо.

А код написал вот так
<?php

function
stripslashesDeep($data)
{
if(is_array($data))
$data = array_map("stripslashesDeep", $data);
else
$data = stripslashes($data);
return $data;
}

if(get_magic_quotes_gpc())
{
$_GET = stripslashesDeep($_GET);
$_POST = stripslashesDeep($_POST);
}

$page = isset($_GET['page']) ? $_GET['page'] : false;

$pages = array( 'about', 'faq', 'zayvka', 'call' );

if(!isset($_GET['page'])){
$page = 'indx';
}
elseif( in_array($_GET['page'], $pages ) ){
$page = $_GET['page'];
}
else{
//редирект на страницу ушибки (404)
header("HTTP/1.1 404 Not Found");
exit(file_get_contents('./404.html'));
}

switch($page) {
case 'indx' :
$file = 'indx.php';
$title = 'Главная';
$description = 'Интернет займы для всех.';
$keywords = 'кредиты, онлайн';
$css = 'style.css';
break;
case 'about' :
$file = 'about.tpl';
$title = 'О компании онлайн-займов';
$description = 'О компании онлайн-займов';
$keywords = 'интернет, займы';
$css = 'stylet.css';
$clas_ab = 'background-color:#215a8e;';
break;
case 'faq' :
$file = 'faq.tpl';
$title = 'Вопрос - ответ';
$description = 'У Вас есть вопросы? У нас есть ответы.';
$keywords = 'Вопрос - ответ';
$css = 'stylet.css';
$clas_faq = 'background-color:#215a8e;';
break;
case 'zayvka' :
$file = 'zayvka.tpl';
$title = 'Онлайн заявка на кредит';
$description = 'Подать онлайн заявку на кредит без Отказа';
$keywords = 'заявка на кредит,подать заявку на кредит';
$css = './css/newzv.css';
$clas = 'background-color:#215a8e;';
break;
case 'call' :
$file = 'call.tpl';
$title = 'Обратный звонок';
$description = 'Заказ обратного звонка';
$keywords = '';
$css = './css/cals.css';
break;
default :
include_once './skins/indx.php';
}
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.