Pogledajte određenu poruku
Staro 08. 08. 2006.   #1
misk0
majstor
Wrote a book
 
Avatar misk0
 
Datum učlanjenja: 30.01.2006
Lokacija: Lugano - Switzerland
Poruke: 1.251
Hvala: 219
106 "Hvala" u 67 poruka
misk0 će postati "faca" uskoromisk0 će postati "faca" uskoro
Pošaljite ICQ poruku za misk0 Pošaljite poruku preko Skype™ za misk0
Default Simulacija POST metode

Zelim poslati parametre na jednu stranicu koristeci POST metodu.(username i pass) bez da koristim formu, vec kroz PHP. Sa GET metodom je lako, potrpas sve u URL i pichi, medjutim meni treba post.
Nashao sam na netu nekoliko metoda tj vise izvora za isti nacin, ali meni to ne radi. Trebam poslati parametre i presumjeriti korisnika na tu stranicu. Posaljem parametre, ali korisnik ne ode na tu stranicu. Djelomicno i kontam, dobijem odgovor nazad koji kad posaljem korisnik (putem header funkcije) bi trebao da odvede korisnika na tu stranicu, ali ne uloguje ga.

PHP kôd:
<?
/* sendToHost
 * ~~~~~~~~~~
 * Params:
 *   $host      - Just the hostname.  No http:// or /path/to/file.html portions
 *   $method    - get or post, case-insensitive
 *   $path      - The /path/to/file.html part
 *   $data      - The query string, without initial question mark
 *   $useragent - If true, 'MSIE' will be sent as the User-Agent (optional)
 *
 * Examples:
 *   sendToHost('www.google.com','get','/search','q=php_imlib');
 *   sendToHost('www.example.com','post','/some_script.cgi',
 *              'param=First+Param&second=Second+param');
*/

function sendToHost($host,$method,$path,$data,$useragent=0)
{
  
// Supply a default method of GET if the one passed was empty
  
if (empty($method)) {
      
$method 'GET';
  }
  
$method strtoupper($method);
  
$fp fsockopen($host80);
  if (
$method == 'GET') {
      
$path .= '?' $data;
  }
  
fputs($fp"$method $path HTTP/1.1\r\n");
  
fputs($fp"Host: $host\r\n");
  
fputs($fp"Content-type: application/x-www-form-urlencoded\r\n");
  
fputs($fp"Content-length: " strlen($data) . "\r\n");
  if (
$useragent) {
      
fputs($fp"User-Agent: MSIE\r\n");
  }
  
fputs($fp"Connection: close\r\n\r\n");
  if (
$method == 'POST') {
      
fputs($fp$data);
  }

  while (!
feof($fp)) {
      
$buf .= fgets($fp,128);
  }
  
fclose($fp);
  return 
$buf;
}

$value sendToHost('phpbb.xxx.net','POST','/login.php','username=og3&password=oogg&login=login');

header($value);
?>
svaka pomoc dobro dosla...

Poslednja izmena od nixa : 08. 08. 2006. u 18:09.
misk0 je offline   Odgovorite uz citat