Gå til innhold

sprintf

Medlemmer
  • Innlegg

    11
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av sprintf

  1. Du kan forsoeke å forhindre cacheing av dokumentet (hvor innholded er oppdateres) ved å sende foelgende HTTP headere (tatt fra PHP manualen)

    <?php 
       header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); 
       header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); 
    // HTTP/1.1 
       header("Cache-Control: no-store, no-cache, must-revalidate"); 
       header("Cache-Control: post-check=0, pre-check=0", false); 
    // HTTP/1.0 
       header("Pragma: no-cache"); 
    ?>
    

     

    Det kan også vaere behjelpelig å sende en REDIRECT (302) status kode til nettleseren ved å benytte:

     

    header("Location: http://www.mittdomene.com/minside.php"); 
    exit;

     

    Dersom dette ikke fixer problemet kan du ty til foelgende loesning:

    Legg til en request variabel i URL'en. Sett verdien til denne til å vaere et random tall mellom 0 og feks 10000 ( f.eks. redirect til: minside.php?belsebubb=randomnumber ). Til og med IE vil da hente documentet fra serveren istedetfor lokal cache.

  2. Du kan jo f.eks lagre informasjon om "expand/collapse tilstanden" til menyene i en cookie. Lag javascript funksjoner som setter cookie verdier, leser cookie verdier, og som justerer menyen tilsvarende.

     

    Alternativt kan du propagere "expand/collapse tilstanden" i URL'en for så å bruke server script til å justere meny-tilstanden.

  3. 1.

    Det er god praksis å skru av all error_reporting på puliserte sider. Slik unngår du å offentligjoere directory strukturen på serveren din.

     

    2.

    Det er også god praksis å skrive feilfri kode. Kvitt deg med alle feil - også 'notice' meldinger. Jeg syntes det er behjelpelig å skru på full error_reporting mens skriptet er under utvikling, og deretter skru av error_reporting fullstendig etter publisering.

     

    3.

    Foelgende kode vil forhindre problemet i alle tilfeller (uten bruk av error_reporting funksjonen eller extract funksjonen)

    <?php
    
       $test = 'standard';    // default value
    
       if( !empty($_GET['test']) ) {
           $test = $_GET['test'];
       }
    
       echo $test;
    
    ?>

  4. Du kan jo kjapt proeve noe slikt som en midlertidig loesning:

     

    	function print_partial_news( $news_file='news.php', $number_of_news=5 ) {
     if( file_exists( $news_file ) ) {
     	$newstables = file_get_contents( $news_file );
     	$offset = 0;
     	for( $i=0; $i < $number_of_news; $i++ ) {
       $end_of_table_pos = strpos( $newstables, '<p> </p>', $offset );
       $offset = $end_of_table_pos + 14;
     	}
     	echo( substr( $newstables, 0, $offset ) );
     	Return true;
     }
     Return false;
    }
    

     

    NB: jeg har ikke testet denne funksjonen, bare tastet den inn, slik at feil kan forekomme.

     

    hilsen sprintf

×
×
  • Opprett ny...