Zurück tutorials.de > Programming > PHP

 
 
Hallo und herzlich willkommen! Tutorials.de ist eine Hilfe-Community mit dem Motto User helfen Usern. Als Gast verfügst Du über Schreibrechte in unseren Foren und Blogs. Du kannst dich aber gerne auch kostenlos registrieren und Teil unserer Gemeinschaft werden! Viel Spaß & Erfolg bei der Vermehrung deines Wissens :-)

Themen: 242.975 | Beiträge: 1.352.293 | Mitglieder: 169.418 (Stand 28.01.10) | Fragen zur Nutzung von Tutorials.de? Nutzungsregeln | Kontaktformular | Impressum

Jubiläums-Countdown 23.02 23.03 23.04 23.05 23.06 23.07 23.08 23.09


4 kostenlose Bücher bei unserer Buch-Verschenkaktion 03/2010
  AntwortAntworten (über Gastzugang)    
  AntwortAntworten (über Gastzugang)    
 
Themen-Optionen Ansicht
Alt 04.04.08, 13:01   #1 (permalink)
Grünschnabel
 
Registriert seit: May 2005
Beiträge: 3
Renommee-Modifikator: 0
Killi138 hat eine blütenweiße Weste

Externe Seite mit POST-Varialen auslesen

Hi,

ich muss eine externe Seite (jobs.ch) auslesen. Um mit der Seitenblätterung der Seite klarzukommen, muss ich wohl oder übel ein paar Variablen per POST übergeben.
Also bleibt mir nichts anderes übrig als fsockopen.
Damit bekomme ich es aber nicht hin!

Hier mein Code:

PHP-Code:
    $fp fsockopen("www.jobs.ch"80$errno$errstr30);
    if (!
$fp) {
        echo 
"$errstr ($errno)<br />\n";
    } else {
        
$data "berufsgruppe=2";
        
        
$out "POST /suche.php HTTP/1.1\r\n";
        
$out .= "Content-Length: ".strlen($data)."\r\n";
        
$out .= "Host: www.jobs.ch\r\n";
        
$out .= "Connection: Close\r\n\r\n";
    
        
fwrite($fp$out);
        
$content "";
        while (!
feof($fp)) {
            
$content .= fgets($fp128);
        }
        
fclose($fp);
        
        
$content str_replace("<""v"$content);
        echo 
$content;
    } 
Wenn ich berufsgruppe=2 weglasse, $data also einem Leerstring übergebe, bekomme ich eine Rückgabe der Seite. Mit berufsgruppe=2 gar nichts. Dann ist die Seite leer, was ja eigtl. nicht sein kann.
Im Prinzip muss ich berufsgruppe und p=20 und page=20 übergeben, damit ich auf Seite 2 lande...

Kann mir jemand helfen?

Und ja, ich habe die Erlaubnis, die Seite auszulesen!
  Killi138 ist offline  
 
Alt 04.04.08, 13:32   #2 (permalink)
Grünschnabel
 
Registriert seit: May 2005
Beiträge: 3
Renommee-Modifikator: 0
Killi138 hat eine blütenweiße Weste

AW: Externe Seite mit POST-Varialen auslesen

Nun ja, ich habs nun mit cURL versucht...

Hier der Code

PHP-Code:
class CURL {
            var 
$callback false;
        
        function 
setCallback($func_name) {
            
$this->callback $func_name;
        }
        
        function 
doRequest($method$url$vars) {
            
$ch curl_init();
            
curl_setopt($chCURLOPT_URL$url);
            
curl_setopt($chCURLOPT_HEADER1);
            
curl_setopt($chCURLOPT_USERAGENT$_SERVER['HTTP_USER_AGENT']);
            
curl_setopt($chCURLOPT_FOLLOWLOCATION1);
            
curl_setopt($chCURLOPT_RETURNTRANSFER1);
            
curl_setopt($chCURLOPT_COOKIEJAR'cookie.txt');
            
curl_setopt($chCURLOPT_COOKIEFILE'cookie.txt');
            if (
$method == 'POST') {
                
curl_setopt($chCURLOPT_POST1);
                
curl_setopt($chCURLOPT_POSTFIELDS$vars);
            }
            
$data curl_exec($ch);
            
curl_close($ch);
            if (
$data) {
                if (
$this->callback)
                {
                    
$callback $this->callback;
                    
$this->callback false;
                    return 
call_user_func($callback$data);
                } else {
                    return 
$data;
                }
            } else {
                return 
curl_error($ch);
            }
        }
        
        function 
get($url) {
            return 
$this->doRequest('GET'$url'NULL');
        }
        
        function 
post($url$vars) {
            return 
$this->doRequest('POST'$url$vars);
        }
    }    
    
    
$test = new CURL();
    
$wurst $test->post("www.jobs.ch/suche.php"htmlentities("berufsgruppe=2&nav=1&p=20&page=20&target=&action="));
    
    
var_dump($wurst); 
Zumindest die Berufsgruppe wird übernommen, aber auf der 2ten Seite lande ich erst nicht...was habe ich hier übersehen? Wenn man in der Seitenblätterung durchklickt, wird die JS-Funktion view() aufgerufen.
Und diese setzt lediglich die Variablen p, page und nav...mehr nicht :-/

Zu hülf...
  Killi138 ist offline  
 
Alt 04.04.08, 13:37   #3 (permalink)
Grünschnabel
 
Registriert seit: May 2005
Beiträge: 3
Renommee-Modifikator: 0
Killi138 hat eine blütenweiße Weste

AW: Externe Seite mit POST-Varialen auslesen

Ok, gut, vergesst es wie leicht man sich doch durch überlegen selbst helfen kann...

Irgendwo in den Notes von de.php.net hab ich gelesen dass man die POST-Variablen html-korrekt übergeben muss...so ein Schmarrn!

Dann wird ja aus berufsgruppe=2&page=20 --> berufsgruppe=2&amp;page20...

Also htmlentities weg und es geht

Danke für die Aufmerksamkeit, seht es als Tutorial an
  Killi138 ist offline  
 
 
 
Lesezeichen:


Themen-Optionen
Ansicht
Ähnliche Themen
 
Thema Autor Forum Antworten Letzter Beitrag
XML Post mit PHP auslesen und in ein Array speichern MiMi PHP 4 12.12.07 12:14
POST Variablenübergabe an externe Seiten anmae PHP 1 09.08.06 09:12
Mit POST Daten an ne fremde Seite senden? HAL PHP 6 03.02.05 13:30
Dateien aus externe Seite mit FTP hochladen alimau PHP 4 22.12.04 09:02
» Tools
 
tutorials.de-Tools tutorial.de-Suchfeld tutorial.de-Widget tutorial.de-RSS-Feed tutorial.de-Banner
» Neue Links
 
Hits: 134
»
JHT's Planetary...
(Cinema 4D-Objekte)
Hits: 261
»
Tageslicht ohne GI
(Cinema 4D-Tutorials)
Hits: 149
»
Puzzle
(Cinema 4D-Tutorials)
Hits: 100
»
Lacreme
(Cinema 4D-Tutorials)
Hits: 190
»
Liquid Light
(Cinema 4D-Tutorials)
» Aktuelle Umfrage
 
Bist du mit der Geschwindigkeit der Tutorials.de-Website zufrieden?
Ja, es putzt mir glatt den Staub vom Bildschirm! - 79,79%
150 Stimmen
Nein, ich denke da muss noch nachgebessert werden... - 20,21%
38 Stimmen
Stimmen gesamt: 188
Du darfst bei dieser Umfrage nicht abstimmen.

 

Alle Zeitangaben in WEZ +1. Es ist jetzt 22:32 Uhr.


Powered by vBulletin® Version 3.8.5 (Deutsch) & vBadvanced CMPS v.3.2.0
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.5.0 RC2 ©2010, Crawlability, Inc.
Alle Rechte vorbehalten ©2000 - 2010 tutorials.de
Design by Mark, CSS by Maik & Sven Mintel
Seite generiert in 0,22142 Sekunden mit 26 queries