| Näytä edellinen aihe :: Näytä seuraava aihe | 
	
	
		| Kirjoittaja | Viesti | 
	
		| Poistettu Vieras
 
 
 
 
 
 
 | 
			
				|  Lähetetty: 27.1.2008 14:56    Viestin aihe: Poistettu |   |  
				| 
 |  
				| Poistettu |  | 
	
		| Takaisin alkuun |  | 
	
		| Poistettu Vieras
 
 
 
 
 
 
 | 
			
				|  Lähetetty: 28.1.2008 15:06    Viestin aihe: Poistettu |   |  
				| 
 |  
				| Poistettu |  | 
	
		| Takaisin alkuun |  | 
	
		| Poistettu Vieras
 
 
 
 
 
 
 | 
			
				|  Lähetetty: 28.1.2008 15:25    Viestin aihe: Poistettu |   |  
				| 
 |  
				| Poistettu |  | 
	
		| Takaisin alkuun |  | 
	
		| axl Arkku.net henkilökunta
 
 
 Liittynyt: 26 Jou 2005
 Viestejä: 289
 
 
 | 
			
				|  Lähetetty: 28.1.2008 15:26    Viestin aihe: |   |  
				| 
 |  
				| Kuten jo vastattiinkin, et voi avata URL:ia kyseisellä funktiolla. Saman toiminnallisuuden saat kuitenkin esimerkiksi funktiolla fsockopen .
 
 Online-statuksen saat vaikka tällä koodilla:
 
 
  	  | Koodi: |  	  | <?php function get_habbo_status($nickname) {
 if($socket = fsockopen('www.habbo.fi', 80)) {
 $headers .= "GET /home/{$nickname} HTTP/1.1\r\n";
 $headers .= "Host: www.habbo.f\r\n";
 $headers .= "Connection: Close\r\n\r\n";
 fwrite($socket, $headers);
 $reply = '';
 while(!feof($socket)) {
 $reply .= fgets($socket, 128);
 }
 fclose($socket);
 list($headers, $content) = explode("\r\n\r\n", $reply, 2);
 if(strpos($content, '<img alt="online"') !== false) {
 return 1;
 } else if(strpos($content, '<img alt="offline"') !== false) {
 return 0;
 } else {
 return false;
 }
 
 } else {
 return false;
 }
 }
 ?>
 
 | 
 Eli siis. Haetaan funktiolla get_habbo_status($nimimerkki) ja palautusarvot: int 1 - online, int 0 - offline, boolean false - haku ei onnistunut.
 
 Pitäisi toimia, en pahemmin testaillut.
 
 Viimeinen muokkaaja, axl pvm 28.1.2008 19:42, muokattu 1 kertaa
 |  | 
	
		| Takaisin alkuun |  | 
	
		| Poistettu Vieras
 
 
 
 
 
 
 | 
			
				|  Lähetetty: 28.1.2008 15:51    Viestin aihe: Poistettu |   |  
				| 
 |  
				| Poistettu |  | 
	
		| Takaisin alkuun |  | 
	
		| axl Arkku.net henkilökunta
 
 
 Liittynyt: 26 Jou 2005
 Viestejä: 289
 
 
 | 
			
				|  Lähetetty: 28.1.2008 19:02    Viestin aihe: |   |  
				| 
 |  
				| Tuossahan on aivan sama onko se habbo.fi vai www.habbo.fi, kummatkin toimivat. 
 Kyseinen funktio voi olla vaikka erillisessä tiedostossa, jonka sitten lataat include/require-komennoilla.
 
 Eli jos tuon sijoitat vaikka tiedostoon onoff.php, käytät sitä tiedostossa sivu.php vaikka näin:
 
 
  	  | Koodi: |  	  | <?php require_once('onoff.php');
 $status = get_habbo_status('Basari');
 if($status === 1) {
 echo 'online';
 } else if($status === 0) {
 echo 'offline';
 } else {
 echo 'tietoa ei saatu haettua';
 }
 ?>
 | 
 
 Pitäisi onnistua melko helposti.
 |  | 
	
		| Takaisin alkuun |  | 
	
		| Poistettu Vieras
 
 
 
 
 
 
 | 
			
				|  Lähetetty: 30.1.2008 0:23    Viestin aihe: Poistettu |   |  
				| 
 |  
				| Poistettu |  | 
	
		| Takaisin alkuun |  | 
	
		| axl Arkku.net henkilökunta
 
 
 Liittynyt: 26 Jou 2005
 Viestejä: 289
 
 
 | 
			
				|  Lähetetty: 30.1.2008 20:20    Viestin aihe: |   |  
				| 
 |  
				| Ei ole suotavaa käyttää toisten palvelimien kaistaa tuollaiseen toimenpiteeseen. 
 Käytä mieluummin omia kuvia, jotka sijaitsevat sitten samalla (eli Arkun) palvelimella kuin sivut, ja niitä voit vaihdella tuon funktion avulla.
 
 Esimerkkinä taas: (ja tuo funktio on taas  tässä esimerkissä tiedostossa onoff.php).
 
 
  	  | Koodi: |  	  | <?php require_once('onoff.php');
 $status = get_habbo_status('Basari');
 if($status === 1) {
 echo '<img src="img/online.gif" alt="Online">';
 } else if($status === 0) {
 echo '<img src="img/offline.gif" alt="Offline">';
 } else {
 echo '<img src="img/error.gif" alt="Error">';
 }
 ?>
 | 
 |  | 
	
		| Takaisin alkuun |  | 
	
		|  |