söndag 1 november 2009

ÅÄÖ från databasen blir konstiga tecken

Visst är det hopplöst när våra svenska tecken inte visas korrekt på hemsidan. Det kan t ex hända om man hämtar text från en databas. För att undvika problemet testa att:

- Ange meta content-type: <meta http-equiv="content-type" content="text/html;charset=UTF-8">

- Spara dina php-filer i utf-8: Modify -> Page Properties -> Title/Encoding: Encoding: Unicode (UTF-8) (i Dreamweaver)

- Ange efter databaskopplingen:
mysql_query( "SET NAMES utf8"); (default kan också ställas in direkt i databasservern, http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html )

mysql_query( "SET CHARACTER SET utf8");

- Använd utf-8 som teckenkodning och utf8_swedish_ci som kollationering på tabellerna i databasen.

lördag 31 oktober 2009

Google web elements - färdig kod för kartor, sökruta, kalender mm

Google web elements finns färdig kod att hämta för olika Google produkter såsom Google kalender, Google kartor, Google sökruta, YouTube etc. Enklare inställningar, t ex för storlek, görs direkt i ett formulär och sedan genereras koden som är färdig att använda direkt.

Google Sök på din hemsida

Med Googles AJAX Search API kan man lägga in en sökfunktion som söker igenom sidorna på sin webbplats. Jag har valt Custom Search Engines och modifierat lite så att resultatlistan är tom till att börja med.

I head-taggen:
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script language="Javascript" type="text/javascript">//<![CDATA[
google.load('search', '1');
// Whenever a search starts, alert the query.
function searchStart(searchControl, searcher, query) {
var queryDiv = document.getElementById('query');
queryDiv.innerHTML = "<p>Du sökte efter: " + query + "</p><h2>Sökresultat</h2>";
}
function OnLoad() {
// create a search control
var searchControl = new google.search.SearchControl();
// Set the Search Control to get the most number of results
searchControl.setResultSetSize(google.search.Search.LARGE_RESULTSET);
// web search, open, alternate root
var options = new google.search.SearcherOptions();
options.setExpandMode(google.search.SearchControl.EXPAND_MODE_OPEN);
options.setRoot(document.getElementById("searchResults"));
// site restricted web search with custom label
// and class suffix
var siteSearch = new google.search.WebSearch();
//siteSearch.setUserDefinedLabel("Min hemsida");
//siteSearch.setUserDefinedClassSuffix("Sök");
siteSearch.setSiteRestriction("url");
searchControl.addSearcher(siteSearch, options);
// Set a callback so that whenever a search is started we will call searchStart
searchControl.setSearchStartingCallback(this, searchStart);
searchControl.draw(document.getElementById("searchForm"));
}
google.setOnLoadCallback(OnLoad);
//]]>
</script>

I body-taggen
<h1>Sök</h1>
<div id="google-search-form">
<div id="searchForm">Laddar...</div>
</div>
<div id="google-search-result">
<div id="query"></div>
<div id="searchResults">Laddar...</div>
</div>


Har ändrat lite på standardutseendet via CSS:
.gsc-twiddleRegionCell { /*döljer rubrik Webb*/
background-image : none;
display : none;
}

Googles AJAX Search API

Google web elements
Vill du göra det ännu enklare så hämta färdig kod direkt på Google web elements. Där kan du också enkelt koppla ditt Adsense-konto till sökmotorn.

söndag 6 september 2009

Följ min blogg!

Nu har jag lagt in en widgeten Följa så att du enkelt kan följa min blogg. Klicka på länken "Följ den här bloggen" på höger sida. Man kan välja att följa bloggen offentligt (din profilbild/namn visas och länkas till din profil) eller anonymt.

Mer information om vad det innebär att följa en blogg
http://www.google.com/support/blogger/bin/answer.py?answer=104226

imagecreatefromjpeg() ...is not a valid JPEG file..

Om man ska använda funktionen imagecreatefromjpeg() på en jpg-bild och får felmeddelandet:

"...is not a valid JPEG file..."

kan det bero på att filen är korrupt.

GD är väldigt känslig när det gäller korrupta filer och fast bilden kanske går att öppna i andra program (för att den bara är "lite" korrupt) så tillåter GD inte det.

Lägg till en test först:
//ta bort felmeddelanden med @
$image = @imagecreatefromjpeg($file);
//fortsätt bara om bilden är ok
if($image){
...
Om bilden går att öppna i t ex Photoshop så kan du prova att spara om den där först.

Radera poster efter datum

Ibland kanske man vill rensa bort poster i sin databas-tabell som är för gamla. Då kan man använda sig av följande SQL-sats:

DELETE FROM tabellnamn WHERE datum < (now( ) - INTERVAL 14 DAY);

(fältet datum är av typen datetime)
Väljer poster äldre än 14 dagar.