Zur Navigation

Google Benutzerdefinierte Suche

1 Tilman

Hallo!

Ich habe da mal wieder ein Problem, dieses Mal mit der Suchmaschine, die ich über Google auf meiner Webseite "eingebaut" habe.

Wenn man aber in das Suchfeld Umlaute eingibt, kommt statt den Suchergebnissen nur ein <.

Kann ich das Eingabefeld so einstellen, dass wenn man ein Umlaut eimgibt, dieser umgewandelt wird? Zum Beispiel:
ä = ae

Am besten wäre es, der Benutzer würde es nicht sehen.

08.12.2007 10:45

2 Jörg Kruse

Hallo Tilman,

wenn Umlaute Probleme machen, kann dies dasran liegen, dass deine Seite und Google unterschiedliche Zeichensätze verwenden - der Charset muss Google gegebenenfalls noch mitgeteilt werden. Wenn auf deiner Seite z.B. ISO-8859-1 als Charset verwendet wird, kannst du dies im Formular so angeben:

<form action="http://www.google.de/search" method="get" accept-charset="ISO-8859-1">

08.12.2007 10:54 | geändert: 08.12.2007 10:56

3 Tilman

Danke!

Ich musste zwar noch etwas ändern, aber der Code hat auch geholfen.

Ich hab da eine Frage:
Kann ich wenn ich z.B. auf der Seite suchwort.html den Begriff Beispiel in das Suchfeld q eingebe, der Seite ergebnisse.html (Suchergebnisse werden dort angezeigt) einen Code hinzufügen, dass das gesuchte Wort angezeigt wir (Als normaler Text).

Tilman

08.12.2007 17:18

4 Tilman

Frage nochmal

12.12.2007 18:10

5 Jörg Kruse

Wie ist denn die Suchergebnisseite von Google eingebunden? Über ein Iframe? Oder liest du die Ergebnisse über die Google-API ein?

12.12.2007 18:30

6 Tilman

Die Suchergebisse werden über Iframe angezeigt.

13.12.2007 19:20

7 Jörg Kruse

Wenn ergebnisse.html die Seite ist, die das Iframe mit der Google-Suchergebnisseite enthält, dann musst du das Formular so umbauen, dass es diese Seite aufruft. Mit PHP kannst du den Suchparameter dann ausgeben, z.B.:

<?php echo htmlspecialchars($_GET['q']) ?>

Damit PHP ausgeführt wird, sollte die Seite natürlich mit einer entsprechenden Endung abgespeichert werden, also z.B. als ergebnisse.php. Schließlich muss die PHP-Seite den Parameter an die Google-Seite im Iframe weiterreichen, z.B.:

<iframe src="http://www.google.de/search?q=<?php echo htmlspecialchars($_GET['q']) ?>">

14.12.2007 00:47 | geändert: 15.12.2007 10:00

8 Tilman

<?php echo htmlspecialchars($_GET['q']) ?>
Wo muss der Code stehen?
Ich habe ihn einfach mal zwischen <body> </body> eingefügt.
Da kommt aber nichts.

15.12.2007 08:54

9 Jörg Kruse

Ja, in den body.

Du hast das Formular geändert, dass es an ergebnisse.php sendet, statt an die Google-Seite? Wie schaut das Formular genau aus?

Edit: mein letzter Beitrag enthielt einen Fehler, den ich jetzt korrigiert habe:

Damit PHP ausgeführt wird, sollte die Seite natürlich mit einer entsprechenden Endung abgespeichert werden, also z.B. als ergebnisse.php.

15.12.2007 10:02 | geändert: 15.12.2007 10:03

10 Tilman

<form name="websuche" action="websuche.php" id="searchbox_000071268898051685313:fymbmbza_h8" accept-charset="ISO-8859-1" method="get" onSubmit="return plausi()" onReset="abbruch()">
				<table border="0" cellpadding="0" cellspacing="0" style="background-color:#FFFFFF;color:#000000; border:solid 1px #99cc00; padding-left:0px; padding-right:0px; padding-top:0px; padding-bottom:0px; width:500px;">
				<tr><td width="100%" class="ksonduschrift">Websuche</td></tr>
				<tr><td class="kasten">
				<div id="fehlermeldung1"></div><div id="fehlermarke1"></div>
				<input type="hidden" name="cx" value="000071268898051685313:fymbmbza_h8" />
				<input type="hidden" name="cof" value="FORID:9" />
				<input type="text" name="q" class="textsuche" />&nbsp;&nbsp;
			        <input type="submit" name="sa" value="Suche" class="buttonsuche"/></td></tr></table>
				</form>
				<script type="text/javascript" src="scripts/chercher"></script>

15.12.2007 16:40