tutoriale photoshop, brushes, patterns, gradient
Site afiliat proiectului Wtricks.com
   
   
  REGULAMENT | Search | Members | Calendar | Help  
 


Post Reply  Post Thread 
[Tutorial] Pagina de eroare personalizata pentru phpLD v2.2.0
Author Message
Agkelos
Designer experimentat
*******


Posts: 650
Group: Registered
Joined: Apr 2007
Status: Offline
Reputation: 12
Lei: 2731.3
Post: #1
Thumbs up  [Tutorial] Pagina de eroare personalizata pentru phpLD v2.2.0

phpLD (php Link Directory) este o aplicatie pentru crearea de directoare web. Un dezavantaj il prezinta inexistenta unei posibilitati de personalizare a mesajelor de eroare. In cazul in care accesati un link inexistent, datorita modului de functionare a aplicatiei, vi se va afisa pagina index iar in acelasi timp browserul va primi ca raspuns un cod de eroare 404, adica pagina inexistenta. E frustrant uneori sa vezi cum pagina exista dar crawlerele o detecteaza ca pagina inexistenta. De asemenea e urat ca cineva sa incerce sa acceseze o pagina inexistenta datorita unui link scris gresit iar acea persoana sa nu stie ca pagina nu exista iar ceea ce vede nu are relevanta.

Pentru a rezolva problema paginilor de eroare personalizate trebuie sa facem mici modificari in aplicatie (ce bine ca e open source). Nu e complicat, e chiar simplu. Trebuie sa modificam un fisier, index.php, si si cream un alt fisier 404.tpl, care sa-l folosim ca template pentru mesajele de eroare aparute in cazul accesarii unei pagini inexistente.

Prima data deschidem fisierul index.php cu un editor de texte sau cu o aplicatie specializata. In cod cautam urmatoarele doua linii:

PHP Code:
$id get_category();
if (!
$tpl->is_cached('main.tpl'$id)) 


Daca nu s-au facut alte modificari ar trebui sa fie liniile 190 si 191. Cele doua linii se inlocuiesc cu urmatorul cod:

PHP Code:
$id get_category();
if(
$id==&&
   
strlen(request_uri()) > &&
   
request_uri() != '/index.php' &&
   !isset(
$_REQUEST['q'])) 
{
    
$path[] = array('ID'=>'0',
                    
'TITLE'=>_L('404, Pagina inexistenta'),
                    
'TITLE_URL'=>", 'DESCRIPTION'=>");
    
$tpl->load_filter('output''trimwhitespace');
    echo 
$tpl->fetch('404.tpl');
    @exit(
0);
} else if (!
$tpl->is_cached('main.tpl'$id)) 


Dupa cum se poate observa am modificat codul care, acum, inainte de a verifica existenta in cache a template-ului, va verifica existenta paginii cerute. Cum phpLD 2.2.0 nu ofera un mod concret pentru identificarea paginilor inexistente codul de mai sus e o "carpeala" si implicit are si un bung, si anume nu va fi valid pentru paginile inexistente care au numele de lungime 1 caracter. Bineinteles, cazurile acestea sunt rare si avand in vedere conditiile date putem fi multumiti cu ceea ce avem.

Dupa ce am facut aceasta modificare trebuie sa cream in directorul templates o pagina numita 404.tpl in care sa introducem urmatorul cod:

PHP Code:
{capture name="title"}{l} - Eroare 404pagina inexistenta{/l} - {/capture}
{
capture assign="in_page_title"}{l}Eroare 404pagina inexistenta{/l}{/capture}
{
capture assign="description"}{l}Eroare 404pagina inexistenta{/l}{/capture}
{include 
file="header.tpl"}
{include 
file="top_bar.tpl"}
{include 
file="admin/messages.tpl"}
<
h3>Eroare 404pagina inexistenta</h3>
<
table border="0" cellspacing="10" class="formPage">
  <
tr>
    <
td class="contact">
        
Pagina solicitata nu a fost gasita pe server.
    </
td>
  </
tr>
</
table>

{include 
file="footer.tpl"


Designul rezultat va fi putin ciudat, dar se poate personaliza asa cum se poate personaliza orice fisier template din phpLD.

Daca aveti intrebari sau daca nu va descurcati postati aici si incerc sa va ajut/lamuresc Wink

Articol original:Pagina de eroare personalizata pentru phpLD v2.2.0


IPFind :: LAMP :: NoIndex
10-31-2008 09:11 AM
Visit this users website Find all posts by this user Quote this message in a reply
Post Reply  Post Thread 

Possibly Related Threads...
Thread: Author Replies: Views: Last Post
Exclamation Tutorial pentru semnaturi user 4 855 04-02-2008 05:25 PM
Last Post: gaby
  O pagina 404 personalizata dojo 3 1,037 02-05-2008 06:38 PM
Last Post: gaby
  Cum se instaleaza phpLD (script free pentru director de links) dojo 3 1,700 12-27-2007 08:37 PM
Last Post: adizbang_tv
  Cum se instaleaza un server local: tutorial pentru PHPDEV dojo 0 1,312 12-28-2006 02:32 AM
Last Post: dojo

View a Printable Version
Send this Thread to a Friend
Subscribe to this Thread | Add Thread to Favorites

Forum Jump:

 

 Invatam Net
Esti nou pe aici? Vorbeste-ne despre tine.
Citeste articole si tutoriale unice.
Ai un site? Iti putem oferi un review.

  Parteneri

  


-->