Willkommen in der Webstatt Zum Webstatt Blog und Stories
fish fish am 17.12.06 12:30

also folgendes:
ich so eine referrer- adresse in der datenbank: [URL]http://www.[/URL] google.de/search?hl=de&sa=X&oi=spell&resnum=0&ct=result&cd=1&q=plus+44+konzertbilder+m%C3%BCnchen&spell=1

und ich will haben dass alle adressen die in der datenbank sind und bei denen "google" in der adresse ist ne "sonderbehandlung" bekommen. also "google" soll zwar in der hauptadresse sein, nicht aber als parameter, zb soll http://www.search.google.com die "sonderbehandlung" bekommen, [URL]www.depp.de?search=google[/URL] aber nicht.

und die sonderbenabdlung soll so aussehen, dass die domain und der suchbegriff angezeigt wird, also der text nach dem &q= bzw ?q= der durch +zeichen zusammengahalten wird, der rest wie browser ect kann wegfallen. also aus der url von oben soll dann "google.de - plus 44 konzertbilder münchen" werden. (wie werden die umlaute genau umgewandelt?)

WIE MACHE ICH SOWAS?

netcup.de Warum gibt es hier Werbung?
Franky Franky am 17.12.06 13:03

guck dir mal http://de.php.net/manual/en/function.parse-url.php an :)
und danach: http://de.php.net/manual/en/function.parse-str.php

mab mab am 17.12.06 14:35

Hey,

die Funktionen sind ja cool.. im Vergleich dazu hatte ich immer aufwendigere Funktionen im Einsatz. Hab eben quick 'n dirty eine ganz simple Funktion gebastelt.

hope it helps ;)

<?php

function getURL ($url){

// host filtern
$url = parse_url($url);
$host = $url['host'];

if(preg_match('/google/',$host)) {

// q filtern
$in = $url['query'];
$value = parse_str($in, $out);

return $host . ' und ' . $out['q'];

} else {
// nööö
}
}
$url = 'http://www. google.de/search?hl=de&sa=X&oi=spell&resnum=0&ct=result&cd=1&q=plus+44+konz';
print getURL($url);

?>


EDIT: kann sein, dass die Funktion nicht ganz korrekt ist. aber das kannst du ja dann anpassen

fish fish am 17.12.06 16:05

danke! das funtioniert einigermassen, nur mit den umlauten gibts noch probleme

aus m%C3%BCnchen wird münchen statt münchen

kann man da noch was machen?

mab mab am 17.12.06 17:18

http://de.php.net/manual/en/function.urldecode.php

fish fish am 17.12.06 18:50

hmm und wie mache ich das dann?
return '# '.$host . ' --> ' . htmlspecialchars(urldecode($out['q'])); bringts nicht

Franky Franky am 17.12.06 20:55

ist wohl utf8 codiert...spiel mal ein bissl damit rum:
http://de3.php.net/manual/en/function.utf8-decode.php
http://de3.php.net/manual/en/function.utf8-encode.php

fish fish am 17.12.06 21:24

hey super, funzt. danke!

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt