Gå til innhold

Legge til æ,ø, å på search script


Anbefalte innlegg

Skrevet

Hei. Er det mulig at jeg kan legge til støtte for Æ, Ø og Å i dette scriptet her?

<?php

// Free script to search your site
// Copyright 2004, Digital Point Solutions
// version 1.0 - January 22, 2004
//
// Feel free to format the results however you see fit, the only thing we ask is that you leave a link to us in case others would like to add it to their site.
// Links will be checked, and removal of the link could result it your website being blocked from using the service.
// Other than that, have fun!  :)   - Shawn

// Set your parameters here
$key = "12345678901234567";  	// This is your Google API key, if you don't have one, get one for free at:
       	// https://www.google.com/accounts/NewAccount?continue=http://api.google.com/createkey&followup=http://api.google.com/createkey

$site = "www.eksempel.no";	// This is the site you wish to search within
       	// If Google has you indexed without "www.", don't specify "www." within your site URL.
       	// 'http://' is *not* required in the site variable.
       	// Examples:
       	// www.cnn.com  	search within www.cnn.com
       	// www.cnn.com/tech/	search within www.cnn.com/tech/
       	//
       	// You can also leave it blank to search the entire web
// Colors
$color_border = "#474747";
$color_title = "#6374BC";
$color_odd_results = "#D9DCE6";
$color_even_results = "#F0F0F0";


$q = stripslashes ($HTTP_GET_VARS['q']);
$start = 0 + $HTTP_GET_VARS['start'];

include ("header.php"); // Edit this file to make it easy to fit into your site's look and feel

ini_set ("allow_url_fopen", "1");
if (!ini_get ("allow_url_fopen")) echo '<FONT COLOR=RED><B>Sorry, this PHP configuration does not allow for usage of <A HREF="http://www.php.net/manual/en/ref.filesystem.php#ini.allow-url-fopen" TARGET="_blank">fopen()</A>, which is required for this search engine script.</B></FONT><P>';

// Let's get the results
$handle = @fopen ("http://search.digitalpoint.com/?q=" . urlencode ($q) . "&key=" . urlencode ($key) . "&site=" . urlencode ($site) . "&start=" . min (990, $start), "r");
while (!feof ($handle) && $handle) {
 $line .= fgets ($handle, 1024);
}
fclose($handle);
 
eval ('$urls = ' . $line . ';');
 
echo '<TABLE BGCOLOR=' . $color_border . ' CELLSPACING=1 CELLPADDING=0><TR><TD><TABLE BGCOLOR=' . $color_odd_results . ' border=0 CELLSPACING=0 CELLPADDING=6><TR BGCOLOR=' . $color_title . '><TH COLSPAN=3>';
echo '<TABLE border=0 WIDTH=100%><TR><TH WIDTH=80 ALIGN=CENTER VALIGN=MIDDLE><FONT SIZE=-1><A HREF="http://www.digitalpoint.com/tools/search/">Add Search<BR>To Your Site</A></FONT></TH><TH ALIGN=CENTER>';

echo '  ';

if ($urls['end'] - $urls['start'] < 9) $urls['results'] = $urls['end'];

if ($urls['results'] > 10) {

 if ($start < 40) {
 	$x = 0;
 } else {
 	$x = round (max (0, min ($start - 40, $urls['results'] - 96) / 10));
 }
 for ($i = $x; $i < $x + 10; $i++) {
 	if ($i != round ($start / 10)) {
   echo '<A HREF="searchresult.php?q=' . urlencode($q) . '&start=' . ($i * 10) . '">' .  ($i + 1) . "</A>  ";
 	} else {
   echo ($i + 1) . "  ";
 	}
 	if (max (10, ($i + 1) * 10) >= $urls['results']) break;
 }

 echo '<BR>';
}

echo '<FONT SIZE=+1>Estimated Total Results:  ' . number_format ($urls['results']) . '</FONT></TH</TR>';

echo '</TH><TH WIDTH=80> </TH></TR></TABLE>';

$rownum = 1;

$start = $urls['start'];
if ($urls['error']) {
 echo "<TR COLSPAN=3><TD><BR><FONT SIZE=-1 COLOR=RED>" . $urls['error'] . "</FONT></TD></TR>";
} else {

 foreach ($urls['urls'] as $key => $url) {
 	$rownum++;
 	echo "<TR";
 	if ($rownum % 2 == 1) echo ' BGCOLOR=' . $color_even_results;
 	echo "><TH ALIGN=RIGHT WIDTH=35>#" . ($key + $start) . ": </TH><TD><A HREF=\"$url\">" . $urls['titles'][$key] . "</A><BR>" . $urls['snippet'][$key] . "<BR><FONT SIZE=-1>     <B>$url</B></FONT></TD><TD>   </TD></TR>";
 }
}
echo '</TABLE></TD></TR></TABLE>';

include ("footer.php");

?>

 

Som dere ser her ser det litt merkelig ut uten æ,ø og å: http://213.184.216.249/hf/searchresult.php

Videoannonse
Annonse
Skrevet

Når jeg ser på siden din, så har google eller no byttet charset til utf-8, noe som tydeligvis ikke funker med æøå.

 

Og jeg finner verken charset eller utf-8 i koden din, så kanskje det er google sin skyld?

Skrevet
Når jeg ser på siden din, så har google eller no byttet charset til utf-8, noe som tydeligvis ikke funker med æøå.

 

Og jeg finner verken charset eller utf-8 i koden din, så kanskje det er google sin skyld?

Det er nok Google ja. Er det ikke noe jeg kan gjøre noe med da eller?

Skrevet

Du kan jo str_replace(); det ut av stringen som kommer ut da.

Veit lite om hvordan det funker det der, men str_replace(); fikser ihvertfall den biffen :)

Skrevet (endret)
Du kan jo str_replace(); det ut av stringen som kommer ut da.

Veit lite om hvordan det funker det der, men str_replace(); fikser ihvertfall den biffen :)

Jeg er nok ikke helt med her. Tror jeg trenger det med teskjei :)

 

Hvor og hva skal jeg sette inn?

Endret av alex100
Skrevet (endret)

Tror jeg hadde testet å bytte ut:

$q = stripslashes ($HTTP_GET_VARS['q']);

med:

$q = str_replace("<meta HTTP-EQUIV=\"content-type\" CONTENT=\"text/html; charset=UTF-8\">", "", stripslashes($HTTP_GET_VARS['q']));

Dette er på ingen måte testet, men kom nå fram til det av en eller annen grunn :p

 

edit: ble kanskje feil.

Endret av LoS
Skrevet (endret)

Test litt rundt på andre variabler, det er ihvertfall på den måten det kan gjøres.

eventuelt legge hele greia i en funksjon og heller str_replace hele funksjonen.

Endret av LoS
Skrevet

Hjelper dette her noe? Fant det på Google siden om API key'er:

http://www.google.com/apis/api_faq.html#tech26

 

26. How do I make queries in languages other than English?

 

The Google Web APIs support requests and responses in UTF-8, allowing you to make requests in all of the world's languages. The original release included parameters <ie> and <oe> for inputEncoding and outputEncoding. These parameters are no longer used and will be removed in a future release. The APIs still do not always return complete results for Chinese, Japanese, and Korean; we are working to remedy this issue.

Skrevet

I følge den der så har ikke denne støtte for annen charset enn utf-8, og det skal liksom komme i en ny versjon.

Kunne jo ha testet å fiksa det for deg, men jeg har ingen API key eller hva det nå er ;)

 

Prøv å legg til f.eks

function sok($HTTP_GET_VARS['q'], $HTTP_GET_VARS['start']) {

på førsten og en

}

på slutten og bruk

str_replace("<meta HTTP-EQUIV=\"content-type\" CONTENT=\"text/html; charset=UTF-8\">", "", sok($HTTP_GET_VARS['q'], $HTTP_GET_VARS['start']));

For å kalle opp søkefunksjonen.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...