[php] Chinese google url ophalen, geeft foute resultaten

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • pim
  • Registratie: Juli 2001
  • Laatst online: 17-09 11:39
Als ik met deze tekens in het Chinees zoek in Google:
最佳手机

Zet google de tekens zelf om, d.m.v. de javascript functie: encodeURIComponent()
naar:
%E6%9C%80%E4%BD%B3%E6%89%8B%E6%9C%BA

Wat deze url geeft:
http://www.google.com/sea...9%8B%E6%9C%BA&btnG=Search

Als ik deze url via mijn browser opvraag, krijg ik netjes de resultaten:

Afbeeldingslocatie: http://www.skateboarden-denbosch.nl/pics/05-11-02_google-1.gif


Wanneer ik deze echter zo via php opvraag:

PHP:
1
2
3
<?
echo implode('',file("http://www.google.com/search?hl=en&lr=&q=%E6%9C%80%E4%BD%B3%E6%89%8B%E6%9C%BA&btnG=Search"));
?>


krijg ik dit terug:
Afbeeldingslocatie: http://www.skateboarden-denbosch.nl/pics/05-11-02_google-2.gif

Vreemd want eigenlijk stuur ik helemaal geen rare tekens..

Heeft iemand enig idee waarom ik via php een andere pagina terug krijg als via mijn browser?

Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 18-09 16:28

Bosmonster

*zucht*

ik weet zo even geen antwoord op je vraag, maar wat ik me wel afvraag is waarom je

PHP:
1
implode ('', file (...))


gebruikt... neem dan file_get_contents(). Die doet exact hetzelfde maar geeft het gewoon als 1 string terug.

(tenzij je een antieke PHP versie (<4.3) gebruikt)

[ Voor 13% gewijzigd door Bosmonster op 02-11-2005 12:14 ]


Acties:
  • 0 Henk 'm!

  • pim
  • Registratie: Juli 2001
  • Laatst online: 17-09 11:39
Ik wist niet dat die functie bestond..
Heb het ff daar mee gedaan maar exact hetzelfde probleem..

Acties:
  • 0 Henk 'm!

  • Webgnome
  • Registratie: Maart 2001
  • Laatst online: 06:21
char encoding?

Strava | AP | IP | AW


Acties:
  • 0 Henk 'm!

  • frickY
  • Registratie: Juli 2001
  • Laatst online: 18-09 14:42
Je zal vergeten urlencode() over de query-string te trekken?

Acties:
  • 0 Henk 'm!

  • Vesta
  • Registratie: November 2004
  • Niet online
PHP:
1
2
3
4
<?php
header("Content-type: text/html; charset=utf-8");
echo  file_get_contents('http://www.google.com/search?q=%E6%9C%80%E4%BD%B3%E6%89%8B%E6%9C%BA&ie=utf-8&oe=utf-8');
?>
Twee aanpassingen: een utf-header zodat de client de data goed parst en ik geef in de url mee dat de data in utf-8 is (ie=utf-8&oe=utf-8). Blijkbaar doet je browser dat laatste automatisch en php niet.

Acties:
  • 0 Henk 'm!

  • pim
  • Registratie: Juli 2001
  • Laatst online: 17-09 11:39
Vesta, bedankt!!! Het werkt nu!
Pagina: 1